This is an automated email from the ASF dual-hosted git repository.
yuzhaojing pushed a change to branch release-feature-rfc46
in repository https://gitbox.apache.org/repos/asf/hudi.git
omit af53430947 test
omit 276787aa2f [HUDI-3350][HUDI-3351] Support HoodieMerge API and Spark
engine-specific HoodieRecord (#5627)
omit 9c361b7954 [HUDI-4344] fix usage of HoodieDataBlock#getRecordIterator
(#6005)
omit 22976d05a4 [HUDI-4292][RFC-46] Update doc to align with the Record
Merge API changes (#5927)
omit 28306ff797 [MINOR] Fix type casting in TestHoodieHFileReaderWriter
omit a0969fc451 [HUDI-3378][HUDI-3379][HUDI-3381] Migrate usage of
HoodieRecordPayload and raw Avro payload to HoodieRecord (#5522)
add ed823f1c6f [HUDI-4320] Make sure
`HoodieStorageConfig.PARQUET_WRITE_LEGACY_FORMAT_ENABLED` could be specified by
the writer (#5970)
add fd7d25ab63 [HUDI-1176] Upgrade hudi to log4j2 (#5366)
add e3eb14ad2d [HUDI-4334] close SparkRDDWriteClient after usage in
Create/Delete/RollbackSavepointsProcedure (#5994)
add 637660b7aa [HUDI-1575] Claim RFC-56: Early Conflict Detection For
Multi-writer (#6002)
add e71f04768e [MINOR] Make CLI 'commit rollback' using
rollbackUsingMarkers false as default (#5174)
add 03a94d9ff5 [HUDI-4331] Allow loading external config file from class
loader (#5987)
add 3948b8935a [HUDI-4336] Fix records overwritten bug with binary primary
key (#5996)
add 6a01f7029c [MINOR] Following #2070, Fix BindException when running
tests on shared machines. (#5951)
add cdaaa3c4c7 [HUDI-4346] Fix params not update
BULKINSERT_ARE_PARTITIONER_RECORDS_SORTED (#5999)
add 8547899a39 [HUDI-4285] add ByteBuffer#rewind after ByteBuffer#get in
AvroDeseria… (#5907)
add 397fd30142 [HUDI-3984] Remove mandatory check of partiton path for cli
command (#5458)
add 62a0c962ac [HUDI-3634] Could read empty or partial
HoodieCommitMetaData in downstream if using HDFS (#5048)
add bdf73b2650 [HUDI-3953]Flink Hudi module should support low-level
source and sink api (#5445)
add 47792a3186 [HUDI-4353] Column stats data skipping for flink (#6026)
add c00ea84985 [HUDI-3505] Add call procedure for
UpgradeOrDowngradeCommand (#6012)
add c0e1587966 [HUDI-3730] Improve meta sync class design and hierarchies
(#5854)
add e0954040a9 [HUDI-3511] Add call procedure for MetadataCommand (#6018)
add c091e4cc30 [HUDI-3730] Add ConfigTool#toMap UT (#6035)
add 6187622178 [MINOR] Improve variable names (#6039)
add 45fdcf68a1 [HUDI-3116]Add a new HoodieDropPartitionsTool to let users
drop table partitions through a standalone job. (#4459)
add fbda4ad5bd [HUDI-4360] Fix HoodieDropPartitionsTool based on
refactored meta sync (#6043)
add 23c9c5c296 [HUDI-3836] Improve the way of fetching metadata partitions
from table (#5286)
add 8570c3aab4 [HUDI-4359] Support show_fs_path_detail command on Call
Produce Command (#6042)
add 3670e82af5 [HUDI-4356] Fix the error when sync hive in CTAS (#6029)
add b18c32379f [HUDI-4219] Merge Into when update expression "col=s.col+2"
on precombine cause exception (#5828)
add 7eeaff9ee0 [HUDI-4357] Support flink 1.15.x (#6050)
add e74ad324c3 [HUDI-4152] Flink offline compaction support compacting
multi compaction plan at once (#5677)
add 5673819736 [HUDI-4309] fix spark32 repartition error (#6033)
add c744848c59 [HUDI-4366] Synchronous cleaning for flink bounded source
(#6051)
add a998586396 [minor] following 4152, refactor the clazz about plan
selection strategy (#6060)
add f20acb8dc3 [HUDI-4367] Support copyToTable on call (#6054)
add fc8d96246a [HUDI-4335] Bug fixes in AWSGlueCatalogSyncClient post
schema evolution. (#5995)
add b686c07407 [HUDI-4276] Reconcile schema-inject null values for missing
fields and add new fields (#6017)
add 6566fc6625 [HUDI-3500] Add call procedure for RepairsCommand (#6053)
add 126b88b48d [HUDI-2150] Rename/Restructure configs for better
modularity (#6061)
add 10aec07fd2 [MINOR] Bump xalan from 2.7.1 to 2.7.2 (#6062)
add 046044c83d [HUDI-4324] Remove use_jdbc config from hudi sync (#6072)
add 63f95ab801 [HUDI-3730][RFC-55] Improve hudi-sync classes design and
simplify configs (#5695)
add 51244eba82 [HUDI-4323] Make database table names optional in sync tool
(#6073)
add a270eeeef9 [MINOR] Update RFCs status (#6078)
add 994c561488 [HUDI-4298] When reading the mor table with
QUERY_TYPE_SNAPSHOT,Unabl… (#5937)
add ee956b8951 [HUDI-4379] Bump Flink versions to 1.14.5 and 1.15.1 (#6080)
add e70a427956 [HUDI-4391] Incremental read from archived commits for
flink (#6096)
add aaccc63ad5 [RFC-51] [HUDI-3478] Hudi to support Change-Data-Capture
(#5436)
add 05606708fa [HUDI-4393] Add marker file for target file when flink
merge handle rolls over (#6103)
add 4898ea52f7 [HUDI-4399][RFC-57] Claim RFC 57 for DeltaStreamer proto
support (#6112)
add b781b31045 [HUDI-4397] Flink Inline Cluster and Compact plan
distribute strategy changed from rebalance to hash to avoid potential multiple
threads accessing the same file (#6106)
add 726e8e3590 [MINOR] Disable TestHiveSyncGlobalCommitTool (#6119)
add 0faa562b6f [HUDI-4403] Fix the end input metadata for bounded source
(#6116)
add 6aec9d754f [HUDI-4408] Reuse old rollover file as base file for flink
merge handle (#6120)
add 80368a049d [HUDI-3503] Add call procedure for CleanCommand (#6065)
add 4bda6afe0b [HUDI-4249] Fixing in-memory `HoodieData` implementation to
operate lazily (#5855)
add ded197800a [HUDI-4170] Make user can use hoodie.datasource.read.paths
to read necessary files (#5722)
add 3964c476e0 Fix file group count issue with metadata partitions (#5892)
add 9282611bae [HUDI-4098] Support HMS for flink HudiCatalog (#6082)
add 1959b843b7 [HUDI-4409] Improve LockManager wait logic when catch
exception (#6122)
add 382d19e85b [HUDI-4065] Add FileBasedLockProvider (#6071)
add 6c3578069e [HUDI-4416] Default database path for hoodie hive catalog
(#6136)
add e3675fe9b0 [HUDI-4372] Enable matadata table by default for flink
(#6066)
add 2b828ccb98 [HUDI-4401] Skip HBase version check (#6114)
add 348519f3cd [HUDI-4427] Add a computed column IT test (#6150)
add 2394c62973 [HUDI-4146][RFC-55] Update config changes proposal (#6162)
add de37774e12 [HUDI-3896] Porting Nested Schema Pruning optimization for
Hudi's custom Relations (#5428)
add c7fe3fd01d [HUDI-3764] Allow loading external configs while querying
Hudi tables with Spark (#4915)
add a33bdd32e3 [HUDI-3993] Replacing UDF in Bulk Insert w/ RDD
transformation (#5470)
add 2bf7920bd9 [MINOR] Add logger for HoodieCopyOnWriteTableInputFormat
(#6161)
add 473be87aa5 Disable EmrFS file metadata caching and EMR Spark's data
prefetcher feature
add f52b93fd10 Merge pull request #6154 from
rahil-c/rahil-c/disable-emrSpark-properties
add 50cdb867c7 [HUDI-4400] Fix missing bloom filters in metadata table in
non-partitioned table (#6113)
add 2e0dd29714 [HUDI-4204] Fixing NPE with row writer path and with OCC
(#5850)
add 36e656aa77 [HUDI-4247] Upgrading protocol buffers version for presto
bundle (#5852)
add 8e0b47e360 [MINOR] Fix result missing information issue in
commits_compare Procedure (#6165)
add 51b5783161 [HUDI-4404] Fix insert into dynamic partition write
misalignment (#6124)
add 41653fc708 [MINOR] Fallback to default for hive-style partitioning,
url-encoding configs (#6175)
add d5c904e10e [MINOR] Fix CI issue with TestHiveSyncTool (#6110)
add eea4a692c0 [HUDI-4039] Make sure all builtin `KeyGenerator`s properly
implement Spark specific APIs (#5523)
add 716dd3512b [MINOR] Disable Flink compactor IT test (#6189)
add 6b84384022 Revert "[MINOR] Fix CI issue with TestHiveSyncTool (#6110)"
(#6192)
add 39f2a06c85 [HUDI-3979] Optimize out mandatory columns when no merging
is performed (#5430)
add a36762a862 [HUDI-4303] Use Hive sentinel value as partition default to
avoid type caste issues (#5954)
add d5c7c79d87 Revert "[HUDI-4324] Remove use_jdbc config from hudi sync
(#6072)" (#6160)
add af10a97e7a [HUDI-4435] Fix Avro field not found issue introduced by
Avro 1.10 (#6155)
add 340c3dbbe1 [HUDI-4437] Fix test conflicts by clearing file system
cache (#6123)
add a5348cc685 [HUDI-4436] Invalidate cached table in Spark after write
(#6159)
add 859157ec01 [MINOR] Fix Call Procedure code style (#6186)
add f0e843249c [MINOR] Bump CI timeout to 150m (#6198)
add f1f0109ab8 [HUDI-4440] Treat boostrapped table as non-partitioned in
HudiFileIndex if partition column is missing from schema (#6163)
add da28e38fe3 [HUDI-4071] Make NONE sort mode as default for bulk insert
(#6195)
add 2d745057ea [HUDI-4420] Fixing table schema delineation on
partition/data schema for Spark relations (#5708)
add a0ffd05b77 [HUDI-4448] Remove the latest commit refresh for timeline
server (#6179)
add ba11082282 [HUDI-4450] Revert the checkpoint abort notification (#6181)
add 1a5a9f7f03 [HUDI-4439] Fix Amazon CloudWatch reporter for metadata
enabled tables (#6164)
add a54c963543 [HUDI-4348] fix merge into sql data quality in concurrent
scene (#6020)
add 1a910fd473 [HUDI-3510] Add sync validate procedure (#6200)
add 2a08a65f71 [MINOR] Fix typos in Spark client related classes (#6204)
add 76a28daeb0 [HUDI-4456] Close FileSystem in
SparkClientFunctionalTestHarness (#6201)
add f6e7227ed5 [MINOR] Only log stdout output for non-zero exit from
commands in IT (#6199)
add b513232449 [HUDI-4458] Add a converter cache for flink
ColumnStatsIndices (#6205)
add 1fda9ee9bb [HUDI-4071] Match ROLLBACK_USING_MARKERS_ENABLE in sql as
datasource (#6206)
add 71c2c3102b [HUDI-4455] Improve test classes for TestHiveSyncTool
(#6202)
add eee6a02f77 [HUDI-4456] Clean up test resources (#6203)
add 6e7ac45735 [HUDI-3884] Support archival beyond savepoint commits
(#5837)
add e7c8df7e8b [HUDI-4250][HUDI-4202] Optimize performance of Column Stats
Index reading in Data Skipping (#5746)
add 74d7b4d751 [HUDI-4471] Relocate AWSDmsAvroPayload class to hudi-common
add 1ea1e659c2 [HUDI-4474] Infer metasync configs (#6217)
add e5faf2cc84 [HUDI-4210] Create custom hbase index to solve data skew
issue on hbase regions (#5797)
add 717f159bfd [HUDI-3730] Keep metasync configs backward compatible
(#6221)
add 924c30c7ea [HUDI-4469] Flip reuse flag to true in
HoodieBackedTableMetadata to improve file listing (#6214)
add cdaec5a8da [HUDI-4186] Support Hudi with Spark 3.3.0 (#5943)
add 51599af281 [HUDI-4126] Disable file splits for Bootstrap real time
queries (via InputFormat) (#6219)
add 0a5ce000bf [HUDI-4490] Make AWSDmsAvroPayload class backwards
compatible (#6229)
add 07eedd3ef6 [HUDI-4484] Add default lock config options for flink
metadata table (#6222)
add ea1fbc71ec [HUDI-4494] keep the fields' order when data is written out
of order (#6233)
add 70b5cf6dab [MINOR] Minor changes around Spark 3.3 support (#6231)
add cfd0c1ee34 [HUDI-4081][HUDI-4472] Addressing Spark SQL vs Spark DS
performance gap (#6213)
add c39e88dcf0 [HUDI-4495] Fix handling of S3 paths incompatible with java
URI standards (#6237)
add ce4330d62b [HUDI-4499] Tweak default retry times for flink metadata
table lock (#6238)
add 765dd2eae6 [HUDI-4221] Optimzing getAllPartitionPaths (#6234)
add 9335e4e487 Moving to 0.13.0-SNAPSHOT on master branch.
add a1cf401350 [HUDI-4504] Disable metadata table by default for flink
(#6241)
add e04b3188e2 [HUDI-4505] Returns instead of throws if lock file exists
for FileSystemBasedLockProvider (#6242)
add 0f703a7e15 [HUDI-4507] Improve file name extraction logic in metadata
utils (#6250)
add c9725899c3 [MINOR] Fix convertPathWithScheme tests (#6251)
add c72d895fed [MINOR] Add license header (#6247)
add 2996292f2b [HUDI-4025] Add Presto and Trino query node to validate
queries (#5578)
add 251b63ef0b [HUDI-4518] Free lock if allocated but not acquired (#6272)
add 84d195d4d4 [HUDI-4510] Repair config "hive_sync.metastore.uris" in
flink sql hive schema sync is not effective (#6257)
add 5cb51220fe [HUDI-3848] Fixing minor bug in listing based rollback
request generation (#6244)
add 4cb36befd5 [HUDI-3378][HUDI-3379][HUDI-3381] Migrate usage of
HoodieRecordPayload and raw Avro payload to HoodieRecord (#5522)
add 798dfd9aa7 [MINOR] Fix type casting in TestHoodieHFileReaderWriter
add 2d6b966307 [HUDI-4292][RFC-46] Update doc to align with the Record
Merge API changes (#5927)
add 34dd504721 [HUDI-4344] fix usage of HoodieDataBlock#getRecordIterator
(#6005)
add ec486855e5 [HUDI-3350][HUDI-3351] Support HoodieMerge API and Spark
engine-specific HoodieRecord (#5627)
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 (af53430947)
\
N -- N -- N refs/heads/release-feature-rfc46 (ec486855e5)
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.
No new revisions were added by this update.
Summary of changes:
.github/workflows/bot.yml | 5 +-
azure-pipelines.yml | 10 +-
.../test-suite/deltastreamer-hive-sync-presto.yaml | 36 +-
docker/demo/sparksql-incremental.commands | 18 +-
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 | 16 +-
.../hudi/aws/sync/AWSGlueCatalogSyncClient.java | 96 +--
.../hudi/aws/sync/AwsGlueCatalogSyncTool.java | 35 +-
hudi-cli/pom.xml | 14 +-
.../apache/hudi/cli/commands/CommitsCommand.java | 2 +-
.../hudi/cli/commands/CompactionCommand.java | 2 +-
.../hudi/cli/commands/FileSystemViewCommand.java | 2 +-
.../cli/commands/HDFSParquetImportCommand.java | 2 +-
...Command.java => HoodieSyncValidateCommand.java} | 2 +-
.../apache/hudi/cli/commands/MetadataCommand.java | 10 +-
.../org/apache/hudi/cli/commands/SparkMain.java | 4 +-
.../cli/commands/TestArchivedCommitsCommand.java | 6 +-
.../hudi/cli/commands/TestCommitsCommand.java | 9 +-
.../hudi/cli/commands/TestCompactionCommand.java | 6 +-
.../cli/commands/TestFileSystemViewCommand.java | 121 ++-
hudi-client/hudi-client-common/pom.xml | 16 +-
.../http/HoodieWriteCommitHttpCallbackClient.java | 4 +-
.../apache/hudi/client/BaseHoodieWriteClient.java | 19 +-
.../hudi/client/HoodieInternalWriteStatus.java | 4 +
.../apache/hudi/client/HoodieTimelineArchiver.java | 55 +-
.../client/embedded/EmbeddedTimelineService.java | 3 +-
.../client/transaction/TransactionManager.java | 4 +
.../lock/FileSystemBasedLockProvider.java | 157 ++++
.../hudi/client/transaction/lock/LockManager.java | 5 +
.../apache/hudi/config/HoodieArchivalConfig.java | 209 +++++
.../org/apache/hudi/config/HoodieCleanConfig.java | 297 +++++++
.../apache/hudi/config/HoodieCompactionConfig.java | 397 +--------
.../apache/hudi/config/HoodieHBaseIndexConfig.java | 4 +
.../org/apache/hudi/config/HoodieLockConfig.java | 19 +-
.../apache/hudi/config/HoodiePayloadConfig.java | 20 +
.../apache/hudi/config/HoodieStorageConfig.java | 31 +-
.../org/apache/hudi/config/HoodieWriteConfig.java | 125 ++-
.../apache/hudi/index/bloom/HoodieBloomIndex.java | 4 +-
.../bloom/ListBasedHoodieBloomIndexHelper.java | 3 +-
.../hudi/index/bucket/HoodieBucketIndex.java | 3 +-
.../org/apache/hudi/io/HoodieKeyLookupHandle.java | 3 +-
.../hudi/keygen/ComplexAvroKeyGenerator.java | 2 +-
.../apache/hudi/keygen/CustomAvroKeyGenerator.java | 4 +-
.../hudi/keygen/GlobalAvroDeleteKeyGenerator.java | 2 +-
.../java/org/apache/hudi/keygen/KeyGenUtils.java | 1 +
.../keygen/NonpartitionedAvroKeyGenerator.java | 4 +-
.../apache/hudi/keygen/SimpleAvroKeyGenerator.java | 2 +-
.../keygen/TimestampBasedAvroKeyGenerator.java | 4 +-
.../metadata/HoodieBackedTableMetadataWriter.java | 28 +-
.../hudi/metrics/datadog/DatadogHttpClient.java | 4 +-
.../hudi/metrics/datadog/DatadogReporter.java | 4 +-
.../java/org/apache/hudi/table/HoodieTable.java | 13 +-
.../hudi/table/action/clean/CleanPlanner.java | 6 +-
.../table/action/commit/HoodieMergeHelper.java | 2 +-
.../table/action/index/RunIndexActionExecutor.java | 5 +-
.../rollback/ListingBasedRollbackStrategy.java | 6 +-
.../hudi/callback/http/TestCallbackHttpClient.java | 38 +-
.../client/transaction/TestTransactionManager.java | 8 +-
.../apache/hudi/config/TestHoodieWriteConfig.java | 14 +-
.../metrics/datadog/TestDatadogHttpClient.java | 41 +-
.../hudi/metrics/datadog/TestDatadogReporter.java | 25 +-
hudi-client/hudi-flink-client/pom.xml | 16 +-
.../apache/hudi/client/HoodieFlinkWriteClient.java | 63 +-
.../client/common/HoodieFlinkEngineContext.java | 6 +-
.../org/apache/hudi/index/FlinkHoodieIndex.java | 8 +-
.../apache/hudi/io/FlinkMergeAndReplaceHandle.java | 2 +-
.../java/org/apache/hudi/io/FlinkMergeHandle.java | 28 +-
.../FlinkHoodieBackedTableMetadataWriter.java | 3 +-
.../org/apache/hudi/table/HoodieFlinkTable.java | 4 +-
.../table/action/commit/FlinkDeleteHelper.java | 5 +-
.../hudi/table/action/commit/FlinkWriteHelper.java | 5 +-
.../index/bloom/TestFlinkHoodieBloomIndex.java | 11 +-
.../testutils/HoodieFlinkClientTestHarness.java | 7 +-
hudi-client/hudi-java-client/pom.xml | 4 +-
.../apache/hudi/client/HoodieJavaWriteClient.java | 5 +-
.../run/strategy/JavaExecutionStrategy.java | 4 +-
.../client/common/HoodieJavaEngineContext.java | 6 +-
.../org/apache/hudi/index/JavaHoodieIndex.java | 8 +-
.../org/apache/hudi/table/HoodieJavaTable.java | 4 +-
.../commit/BaseJavaCommitActionExecutor.java | 8 +-
.../hudi/table/action/commit/JavaDeleteHelper.java | 5 +-
.../hudi/table/action/commit/JavaWriteHelper.java | 5 +-
.../testutils/HoodieJavaClientTestHarness.java | 2 +-
hudi-client/hudi-spark-client/pom.xml | 4 +-
.../HoodieSparkBootstrapSchemaProvider.java | 18 +-
.../strategy/SingleSparkJobExecutionStrategy.java | 2 +-
.../hudi/client/model/HoodieInternalRow.java | 269 +++---
.../client/utils/SparkInternalSchemaConverter.java | 4 +-
.../hudi/client/utils/SparkValidatorUtils.java | 2 +-
.../org/apache/hudi/data/HoodieJavaPairRDD.java | 17 +-
.../java/org/apache/hudi/data/HoodieJavaRDD.java | 32 +-
.../index/bloom/SparkHoodieBloomIndexHelper.java | 3 +-
.../hbase/RebalancedSparkHoodieHBaseIndex.java | 19 +-
.../hudi/index/hbase/SparkHoodieHBaseIndex.java | 10 +-
.../storage/row/HoodieInternalRowFileWriter.java | 3 +-
.../row/HoodieInternalRowFileWriterFactory.java | 65 +-
.../row/HoodieInternalRowParquetWriter.java | 3 +-
.../hudi/io/storage/row/HoodieRowCreateHandle.java | 153 ++--
.../HoodieRowCreateHandleWithoutMetaFields.java | 64 --
.../storage/row/HoodieRowParquetWriteSupport.java | 41 +-
.../apache/hudi/keygen/BuiltinKeyGenerator.java | 592 +++++++++++--
.../apache/hudi/keygen/ComplexKeyGenerator.java | 33 +-
.../org/apache/hudi/keygen/CustomKeyGenerator.java | 45 +-
.../hudi/keygen/GlobalDeleteKeyGenerator.java | 23 +-
.../hudi/keygen/NonpartitionedKeyGenerator.java | 34 +-
.../apache/hudi/keygen/RowKeyGeneratorHelper.java | 288 -------
.../org/apache/hudi/keygen/SimpleKeyGenerator.java | 50 +-
.../hudi/keygen/SparkKeyGeneratorInterface.java | 51 +-
.../hudi/keygen/TimestampBasedKeyGenerator.java | 54 +-
.../bootstrap/BaseBootstrapMetadataHandler.java | 13 +-
.../java/org/apache/hudi/util/DataTypeUtils.java | 110 +--
.../scala/org/apache/hudi/HoodieSparkUtils.scala | 82 +-
.../org/apache/hudi/SparkAdapterSupport.scala | 4 +-
.../org/apache/hudi/unsafe/UTF8StringBuilder.java | 100 +++
.../scala/org/apache/hudi/util/JFunction.scala | 32 +-
.../spark/sql/HoodieCatalystPlansUtils.scala | 98 +++
.../apache/spark/sql/HoodieUnsafeRowUtils.scala | 122 +++
.../org/apache/spark/sql/hudi/SparkAdapter.scala | 118 ++-
.../org/apache/hudi/client/TestClientRollback.java | 12 +-
.../hudi/client/TestFileBasedLockProvider.java | 135 +++
.../hudi/client/TestHoodieClientMultiWriter.java | 117 ++-
.../hudi/client/TestTableSchemaEvolution.java | 8 +-
.../functional/TestHoodieBackedMetadata.java | 158 ++--
.../functional/TestHoodieBackedTableMetadata.java | 28 +-
.../TestHoodieClientOnCopyOnWriteStorage.java | 34 +-
.../hudi/client/functional/TestHoodieIndex.java | 3 +-
.../client/functional/TestHoodieMetadataBase.java | 22 +-
.../functional/TestHoodieMetadataBootstrap.java | 8 +-
.../hudi/client/model/TestHoodieInternalRow.java | 35 +-
.../hudi/index/bloom/TestHoodieBloomIndex.java | 203 ++++-
.../index/hbase/TestSparkHoodieHBaseIndex.java | 8 +-
.../apache/hudi/io/TestHoodieTimelineArchiver.java | 168 +++-
.../row/TestHoodieInternalRowParquetWriter.java | 3 +-
.../io/storage/row/TestHoodieRowCreateHandle.java | 46 +-
.../java/org/apache/hudi/table/TestCleaner.java | 43 +-
.../TestCopyOnWriteRollbackActionExecutor.java | 67 ++
.../table/functional/TestCleanPlanExecutor.java | 75 +-
...dieSparkCopyOnWriteTableArchiveWithReplace.java | 8 +-
.../TestHoodieSparkMergeOnReadTableRollback.java | 10 +-
.../hudi/testutils/HoodieClientTestBase.java | 9 +-
.../hudi/testutils/HoodieClientTestHarness.java | 4 +-
.../SparkClientFunctionalTestHarness.java | 15 +-
.../hudi/testutils/SparkDatasetTestUtils.java | 1 +
.../hudi/keygen/TestRowGeneratorHelper.scala | 102 ---
.../spark/sql/TestHoodieUnsafeRowUtils.scala | 167 ++++
hudi-client/pom.xml | 2 +-
hudi-common/pom.xml | 2 +-
.../org/apache/hudi/BaseHoodieTableFileIndex.java | 12 +-
.../java/org/apache/hudi/avro/HoodieAvroUtils.java | 47 +-
.../org/apache/hudi/common/bloom/BloomFilter.java | 9 +-
.../bloom/HoodieDynamicBoundedBloomFilter.java | 7 +-
.../hudi/common/bloom/SimpleBloomFilter.java | 9 +-
.../common/config/DFSPropertiesConfiguration.java | 22 +-
.../hudi/common/config/HoodieCommonConfig.java | 7 +
.../apache/hudi/common/config/HoodieConfig.java | 15 +
.../hudi/common/config/HoodieMetadataConfig.java | 30 +-
.../hudi/common/config/LockConfiguration.java | 2 +
.../apache/hudi/common/config/TypedProperties.java | 6 +
.../hudi/common/data/HoodieBaseListData.java | 72 ++
.../org/apache/hudi/common/data/HoodieData.java | 167 ++--
.../org/apache/hudi/common/data/HoodieList.java | 178 ----
.../apache/hudi/common/data/HoodieListData.java | 182 ++++
.../hudi/common/data/HoodieListPairData.java | 201 +++++
.../org/apache/hudi/common/data/HoodieMapPair.java | 168 ----
.../apache/hudi/common/data/HoodiePairData.java | 70 +-
.../common/engine/HoodieLocalEngineContext.java | 6 +-
.../java/org/apache/hudi/common/fs/FSUtils.java | 18 +
.../hudi/common/fs/HoodieWrapperFileSystem.java | 71 +-
.../hudi/common/model}/AWSDmsAvroPayload.java | 6 +-
.../apache/hudi/common/model/HoodieAvroRecord.java | 2 +-
.../hudi/common/model/HoodieAvroRecordMerge.java | 2 +-
.../apache/hudi/common/model/HoodieFileGroup.java | 20 +-
.../org/apache/hudi/common/model/HoodieRecord.java | 4 +
.../hudi/common/table/HoodieTableConfig.java | 14 +-
.../hudi/common/table/HoodieTableMetaClient.java | 8 +-
.../hudi/common/table/TableSchemaResolver.java | 27 +
.../table/log/AbstractHoodieLogRecordReader.java | 4 +-
.../apache/hudi/common/table/log/InstantRange.java | 120 ++-
.../table/log/block/HoodieAvroDataBlock.java | 6 +-
.../table/timeline/HoodieActiveTimeline.java | 31 +-
.../table/timeline/HoodieDefaultTimeline.java | 36 +-
.../hudi/common/table/timeline/HoodieTimeline.java | 9 +
.../view/RemoteHoodieTableFileSystemView.java | 2 -
.../apache/hudi/common/util/CollectionUtils.java | 26 +-
.../java/org/apache/hudi/common/util/Either.java | 93 +++
.../org/apache/hudi/common/util/HoodieTimer.java | 24 +-
.../org/apache/hudi/common/util/ParquetUtils.java | 2 +-
.../hudi/common/util/PartitionPathEncodeUtils.java | 2 +-
.../apache/hudi/common/util/ReflectionUtils.java | 6 +-
.../org/apache/hudi/common/util/StringUtils.java | 22 +-
.../org/apache/hudi/common/util/TypeUtils.java | 12 +
.../hudi/exception/HoodieCatalogException.java | 27 +-
.../schema/action/InternalSchemaMerger.java | 10 +-
.../schema/utils/AvroSchemaEvolutionUtils.java | 74 +-
.../internal/schema/utils/InternalSchemaUtils.java | 7 +-
.../org/apache/hudi/keygen/BaseKeyGenerator.java | 13 +-
.../java/org/apache/hudi/keygen/KeyGenerator.java | 2 +-
.../metadata/FileSystemBackedTableMetadata.java | 52 +-
.../hudi/metadata/HoodieBackedTableMetadata.java | 43 +-
.../metadata/HoodieMetadataFileSystemView.java | 2 +-
.../hudi/metadata/HoodieMetadataPayload.java | 2 +-
.../apache/hudi/metadata/HoodieTableMetadata.java | 3 +-
.../hudi/metadata/HoodieTableMetadataUtil.java | 33 +-
.../hudi/metadata/MetadataPartitionType.java | 2 +-
hudi-common/src/main/resources/hbase-site.xml | 9 +-
.../org/apache/hudi/avro/TestHoodieAvroUtils.java | 30 +
...TestHoodieList.java => TestHoodieListData.java} | 21 +-
...apPair.java => TestHoodieListDataPairData.java} | 80 +-
.../org/apache/hudi/common/fs/TestFSUtils.java | 12 +-
.../apache/hudi/common/fs/TestStorageSchemes.java | 22 +
.../hudi/common/model}/TestAWSDmsAvroPayload.java | 6 +-
.../hudi/common/model/TestHoodieFileGroup.java | 26 +
.../table/timeline/TestHoodieActiveTimeline.java | 95 +++
.../view/TestPriorityBasedFileSystemView.java | 2 +-
.../hudi/common/testutils/FileCreateUtils.java | 15 +
.../common/testutils/HoodieTestDataGenerator.java | 25 +-
.../hudi/common/testutils/HoodieTestTable.java | 28 +-
.../hudi/common/testutils/HoodieTestUtils.java | 4 +
.../hudi/common/testutils/MockHoodieTimeline.java | 6 +
.../testutils/minicluster/HdfsTestService.java | 4 +-
.../testutils/minicluster/MiniClusterUtil.java | 4 +-
.../apache/hudi/common/util/TestParquetUtils.java | 2 +-
.../apache/hudi/common/util/TestStringUtils.java | 24 +
.../schema/utils/TestAvroSchemaEvolutionUtils.java | 78 +-
hudi-examples/hudi-examples-common/pom.xml | 2 +-
hudi-examples/hudi-examples-flink/pom.xml | 24 +-
.../quickstart/source/ContinuousFileSource.java | 5 +-
.../quickstart/TestHoodieFlinkQuickstart.java | 2 +
hudi-examples/hudi-examples-java/pom.xml | 2 +-
.../java/HoodieJavaWriteClientExample.java | 4 +-
hudi-examples/hudi-examples-spark/pom.xml | 8 +-
.../examples/common/HoodieExampleSparkUtils.java | 1 +
.../examples/spark/HoodieWriteClientExample.java | 4 +-
hudi-examples/pom.xml | 2 +-
hudi-flink-datasource/hudi-flink/pom.xml | 64 +-
.../apache/hudi/configuration/FlinkOptions.java | 12 +-
.../hudi/configuration/HadoopConfigurations.java | 4 +-
.../apache/hudi/configuration/OptionsResolver.java | 25 +
.../java/org/apache/hudi/sink/CleanFunction.java | 4 +-
.../org/apache/hudi/sink/StreamWriteFunction.java | 1 +
.../hudi/sink/StreamWriteOperatorCoordinator.java | 56 +-
.../hudi/sink/append/AppendWriteFunction.java | 1 +
.../org/apache/hudi/sink/bulk/RowDataKeyGen.java | 9 +-
.../sink/common/AbstractStreamWriteFunction.java | 16 +-
.../hudi/sink/compact/CompactionCommitSink.java | 4 +-
.../sink/compact/CompactionPlanSourceFunction.java | 31 +-
.../hudi/sink/compact/FlinkCompactionConfig.java | 18 +-
.../hudi/sink/compact/HoodieFlinkCompactor.java | 93 ++-
.../compact/strategy/CompactionPlanStrategies.java | 74 ++
.../compact/strategy/CompactionPlanStrategy.java | 23 +-
.../org/apache/hudi/sink/meta/CkpMetadata.java | 8 +-
.../sink/partitioner/profile/WriteProfiles.java | 42 +
.../apache/hudi/sink/utils/HiveSyncContext.java | 104 ++-
.../apache/hudi/sink/utils/NonThrownExecutor.java | 4 +
.../java/org/apache/hudi/sink/utils/Pipelines.java | 24 +-
.../java/org/apache/hudi/source/FileIndex.java | 122 ++-
.../apache/hudi/source/IncrementalInputSplits.java | 194 ++++-
.../hudi/source/StreamReadMonitoringFunction.java | 3 +
.../hudi/source/stats/ColumnStatsIndices.java | 387 +++++++++
.../hudi/source/stats/ExpressionEvaluator.java | 552 +++++++++++++
.../apache/hudi/streamer/FlinkStreamerConfig.java | 3 +-
.../org/apache/hudi/table/HoodieTableSink.java | 6 +-
.../org/apache/hudi/table/HoodieTableSource.java | 79 +-
.../apache/hudi/table/catalog/CatalogOptions.java | 18 +
.../apache/hudi/table/catalog/HiveSchemaUtils.java | 207 +++++
.../hudi/table/catalog/HoodieCatalogFactory.java | 38 +-
.../hudi/table/catalog/HoodieCatalogUtil.java | 96 +++
.../hudi/table/catalog/HoodieHiveCatalog.java | 911 +++++++++++++++++++++
.../hudi/table/catalog/TableOptionProperties.java | 64 ++
.../table/catalog/TypeInfoLogicalTypeVisitor.java | 198 +++++
.../apache/hudi/table/format/FilePathUtils.java | 8 +
.../table/format/cow/CopyOnWriteInputFormat.java | 8 +-
.../table/format/mor/MergeOnReadInputFormat.java | 10 +-
.../org/apache/hudi/util/AvroSchemaConverter.java | 37 +-
.../apache/hudi/util/AvroToRowDataConverters.java | 4 +-
.../java/org/apache/hudi/util/DataTypeUtils.java | 62 ++
.../java/org/apache/hudi/util/ExpressionUtils.java | 180 ++++
.../java/org/apache/hudi/util/HoodiePipeline.java | 270 ++++++
.../org/apache/hudi/util/RowDataProjection.java | 8 +
.../java/org/apache/hudi/util/StreamerUtil.java | 102 ++-
.../apache/hudi/util/ViewStorageProperties.java | 2 +-
.../apache/hudi/sink/ITTestDataStreamWrite.java | 143 +++-
.../org/apache/hudi/sink/TestWriteCopyOnWrite.java | 6 +-
.../org/apache/hudi/sink/TestWriteMergeOnRead.java | 57 ++
.../apache/hudi/sink/bulk/TestRowDataKeyGen.java | 21 +-
.../sink/compact/ITTestHoodieFlinkCompactor.java | 125 ++-
.../sink/compact/TestCompactionPlanStrategy.java | 150 ++++
.../hudi/sink/utils/TestHiveSyncContext.java | 16 +-
.../org/apache/hudi/sink/utils/TestWriteBase.java | 19 +-
.../java/org/apache/hudi/source/TestFileIndex.java | 30 +-
.../apache/hudi/source/TestStreamReadOperator.java | 8 +-
.../hudi/source/stats/TestColumnStatsIndices.java | 98 +++
.../hudi/source/stats/TestExpressionEvaluator.java | 374 +++++++++
.../apache/hudi/table/ITTestHoodieDataSource.java | 143 +++-
.../apache/hudi/table/TestHoodieTableSource.java | 18 +-
.../hudi/table/catalog/HoodieCatalogTestUtils.java | 67 ++
.../table/catalog/TestHoodieCatalogFactory.java | 98 +++
.../hudi/table/catalog/TestHoodieHiveCatalog.java | 183 +++++
.../apache/hudi/table/format/TestInputFormat.java | 102 +++
.../apache/hudi/utils/TestAvroSchemaConverter.java | 53 ++
.../org/apache/hudi/utils/TestCompactionUtil.java | 6 +
.../org/apache/hudi/utils/TestConfigurations.java | 3 +
.../test/java/org/apache/hudi/utils/TestData.java | 145 +++-
.../test/java/org/apache/hudi/utils/TestUtils.java | 10 +-
.../hudi/utils/TestViewStorageProperties.java | 2 +-
.../hudi/utils/source/ContinuousFileSource.java | 5 +-
.../hudi-flink/src/test/resources/hive-site.xml | 30 +
.../test-catalog-factory-conf/hive-site.xml | 26 +
hudi-flink-datasource/hudi-flink1.13.x/pom.xml | 27 +-
.../adapter/DataStreamScanProviderAdapter.java | 50 +-
.../adapter/DataStreamSinkProviderAdapter.java | 50 +-
.../main/java/org/apache/hudi/adapter/Utils.java | 12 +
.../table/format/cow/ParquetSplitReaderUtil.java | 0
.../table/format/cow/vector/HeapArrayVector.java | 0
.../format/cow/vector/HeapMapColumnVector.java | 0
.../format/cow/vector/HeapRowColumnVector.java | 0
.../format/cow/vector/ParquetDecimalVector.java | 0
.../cow/vector/reader/AbstractColumnReader.java | 0
.../cow/vector/reader/ArrayColumnReader.java | 0
.../vector/reader/BaseVectorizedColumnReader.java | 0
.../vector/reader/FixedLenBytesColumnReader.java | 0
.../vector/reader/Int64TimestampColumnReader.java | 0
.../format/cow/vector/reader/MapColumnReader.java | 0
.../reader/ParquetColumnarRowSplitReader.java | 0
.../cow/vector/reader/ParquetDataColumnReader.java | 0
.../reader/ParquetDataColumnReaderFactory.java | 0
.../format/cow/vector/reader/RowColumnReader.java | 0
.../format/cow/vector/reader/RunLengthDecoder.java | 6 +-
hudi-flink-datasource/hudi-flink1.14.x/pom.xml | 33 +-
.../adapter/DataStreamScanProviderAdapter.java | 50 +-
.../adapter/DataStreamSinkProviderAdapter.java | 50 +-
.../main/java/org/apache/hudi/adapter/Utils.java | 12 +
.../table/format/cow/ParquetSplitReaderUtil.java | 0
.../table/format/cow/vector/HeapArrayVector.java | 0
.../format/cow/vector/HeapMapColumnVector.java | 0
.../format/cow/vector/HeapRowColumnVector.java | 0
.../format/cow/vector/ParquetDecimalVector.java | 0
.../cow/vector/reader/AbstractColumnReader.java | 0
.../cow/vector/reader/ArrayColumnReader.java | 0
.../vector/reader/BaseVectorizedColumnReader.java | 0
.../vector/reader/FixedLenBytesColumnReader.java | 0
.../vector/reader/Int64TimestampColumnReader.java | 0
.../format/cow/vector/reader/MapColumnReader.java | 0
.../reader/ParquetColumnarRowSplitReader.java | 0
.../cow/vector/reader/ParquetDataColumnReader.java | 0
.../reader/ParquetDataColumnReaderFactory.java | 0
.../format/cow/vector/reader/RowColumnReader.java | 0
.../format/cow/vector/reader/RunLengthDecoder.java | 6 +-
.../{hudi-flink1.14.x => hudi-flink1.15.x}/pom.xml | 49 +-
.../adapter/AbstractStreamOperatorAdapter.java | 0
.../AbstractStreamOperatorFactoryAdapter.java | 0
.../adapter/DataStreamScanProviderAdapter.java | 21 +-
.../adapter/DataStreamSinkProviderAdapter.java | 20 +-
.../hudi/adapter/MailboxExecutorAdapter.java | 0
.../apache/hudi/adapter/RateLimiterAdapter.java | 0
.../main/java/org/apache/hudi/adapter/Utils.java | 14 +
.../table/format/cow/ParquetSplitReaderUtil.java | 28 +-
.../table/format/cow/vector/HeapArrayVector.java | 10 +-
.../format/cow/vector/HeapMapColumnVector.java | 10 +-
.../format/cow/vector/HeapRowColumnVector.java | 10 +-
.../format/cow/vector/ParquetDecimalVector.java | 6 +-
.../cow/vector/reader/AbstractColumnReader.java | 4 +-
.../cow/vector/reader/ArrayColumnReader.java | 22 +-
.../vector/reader/BaseVectorizedColumnReader.java | 2 +-
.../vector/reader/FixedLenBytesColumnReader.java | 6 +-
.../vector/reader/Int64TimestampColumnReader.java | 4 +-
.../format/cow/vector/reader/MapColumnReader.java | 4 +-
.../reader/ParquetColumnarRowSplitReader.java | 8 +-
.../cow/vector/reader/ParquetDataColumnReader.java | 0
.../reader/ParquetDataColumnReaderFactory.java | 0
.../format/cow/vector/reader/RowColumnReader.java | 2 +-
.../format/cow/vector/reader/RunLengthDecoder.java | 10 +-
.../org/apache/hudi/adapter/OutputAdapter.java | 0
.../adapter/StateInitializationContextAdapter.java | 24 +-
.../adapter/StreamingRuntimeContextAdapter.java | 0
.../org/apache/hudi/adapter/TestTableEnvs.java | 0
hudi-flink-datasource/pom.xml | 5 +-
hudi-gcp/pom.xml | 14 +-
.../hudi/gcp/bigquery/BigQuerySyncConfig.java | 196 ++---
.../apache/hudi/gcp/bigquery/BigQuerySyncTool.java | 67 +-
.../gcp/bigquery/HoodieBigQuerySyncClient.java | 109 +--
.../hudi/gcp/bigquery/TestBigQuerySyncConfig.java | 92 +--
hudi-hadoop-mr/pom.xml | 2 +-
.../hadoop/HoodieCopyOnWriteTableInputFormat.java | 4 +
.../hudi/hadoop/realtime/HoodieRealtimePath.java | 2 +-
.../utils/HoodieRealtimeInputFormatUtils.java | 2 +-
.../utils/HoodieRealtimeRecordReaderUtils.java | 10 +-
.../TestHoodieCopyOnWriteTableInputFormat.java | 60 ++
.../apache/hudi/hadoop/TestInputPathHandler.java | 2 +-
.../TestHoodieMergeOnReadTableInputFormat.java | 68 ++
.../realtime/TestHoodieRealtimeRecordReader.java | 17 +
hudi-integ-test/pom.xml | 24 +-
.../hudi/integ/testsuite/HoodieTestSuiteJob.java | 23 +
.../integ/testsuite/HoodieTestSuiteWriter.java | 6 +-
.../integ/testsuite/configuration/DeltaConfig.java | 54 +-
.../apache/hudi/integ/testsuite/dag/DagUtils.java | 114 ++-
.../integ/testsuite/dag/nodes/BaseQueryNode.java | 62 ++
.../integ/testsuite/dag/nodes/HiveQueryNode.java | 50 +-
.../integ/testsuite/dag/nodes/PrestoQueryNode.java | 60 ++
.../integ/testsuite/dag/nodes/TrinoQueryNode.java | 60 ++
.../integ/testsuite/generator/DeltaGenerator.java | 2 +-
.../testsuite/helpers/HiveServiceProvider.java | 16 +-
.../java/org/apache/hudi/integ/ITTestBase.java | 1 +
.../testsuite/job/TestHoodieTestSuiteJob.java | 14 +-
.../src/test/resources/unit-test-cow-dag.yaml | 22 +-
hudi-kafka-connect/pom.xml | 18 +-
.../hudi/connect/utils/KafkaConnectUtils.java | 9 +-
.../writers/KafkaConnectWriterProvider.java | 19 +-
hudi-spark-datasource/README.md | 17 +-
hudi-spark-datasource/hudi-spark-common/pom.xml | 4 +-
.../main/java/org/apache/hudi/DataSourceUtils.java | 109 +--
.../apache/hudi/HoodieDatasetBulkInsertHelper.java | 189 -----
.../java/org/apache/hudi/SparkRowWriteHelper.java | 72 --
.../BulkInsertDataInternalWriterHelper.java | 118 +--
.../internal/DataSourceInternalWriterHelper.java | 1 +
.../org/apache/hudi/BaseFileOnlyRelation.scala | 89 +-
.../org/apache/hudi/ColumnStatsIndexSupport.scala | 481 +++++++----
.../scala/org/apache/hudi/DataSourceOptions.scala | 100 +--
.../main/scala/org/apache/hudi/DefaultSource.scala | 21 +-
.../scala/org/apache/hudi/HoodieBaseRelation.scala | 426 +++++++---
.../org/apache/hudi/HoodieCatalystUtils.scala | 65 ++
.../org/apache/hudi/HoodieDataSourceHelper.scala | 37 +-
.../hudi/HoodieDatasetBulkInsertHelper.scala | 156 ++++
.../scala/org/apache/hudi/HoodieDatasetUtils.scala | 45 -
.../scala/org/apache/hudi/HoodieFileIndex.scala | 117 +--
.../org/apache/hudi/HoodieMergeOnReadRDD.scala | 258 +++---
.../org/apache/hudi/HoodieSparkSqlWriter.scala | 131 ++-
.../scala/org/apache/hudi/HoodieWriterUtils.scala | 23 +-
.../hudi/MergeOnReadIncrementalRelation.scala | 55 +-
.../apache/hudi/MergeOnReadSnapshotRelation.scala | 201 ++++-
.../apache/hudi/SparkHoodieTableFileIndex.scala | 23 +-
...nsafeRDDUtils.scala => HoodieUnsafeUtils.scala} | 45 +-
.../apache/spark/sql/avro/SchemaConverters.scala | 41 +-
.../apache/spark/sql/hudi/DataSkippingUtils.scala | 2 +-
.../spark/sql/hudi/HoodieSqlCommonUtils.scala | 6 +-
.../spark/sql/hudi/ProvidesHoodieConfig.scala | 87 +-
.../sql/hudi/command/payload/SqlTypedRecord.scala | 11 +-
hudi-spark-datasource/hudi-spark/pom.xml | 18 +-
.../apache/hudi/cli/BootstrapExecutorUtils.java | 28 +-
.../org/apache/hudi/payload/AWSDmsAvroPayload.java | 57 +-
.../org/apache/spark/sql/hudi/DeDupeType.scala | 19 +-
.../org/apache/spark/sql/hudi/DedupeSparkJob.scala | 245 ++++++
.../sql/hudi/HoodieSparkSessionExtension.scala | 15 +-
.../org/apache/spark/sql/hudi/HoodieSqlUtils.scala | 2 +-
.../org/apache/spark/sql/hudi/SparkHelpers.scala | 134 +++
.../spark/sql/hudi/analysis/HoodieAnalysis.scala | 58 +-
.../command/CreateHoodieTableAsSelectCommand.scala | 13 +-
.../hudi/command/DeleteHoodieTableCommand.scala | 6 +-
.../command/InsertIntoHoodieTableCommand.scala | 244 +++---
.../hudi/command/MergeIntoHoodieTableCommand.scala | 50 +-
.../hudi/command/procedures/BaseProcedure.scala | 1 -
.../procedures/CommitsCompareProcedure.scala | 10 +-
.../command/procedures/CopyToTableProcedure.scala | 128 +++
.../procedures/CreateMetadataTableProcedure.scala | 80 ++
...cedure.scala => CreateSavepointProcedure.scala} | 14 +-
.../command/procedures/DeleteMarkerProcedure.scala | 2 +-
...re.scala => DeleteMetadataTableProcedure.scala} | 55 +-
...cedure.scala => DeleteSavepointProcedure.scala} | 12 +-
.../procedures/ExportInstantsProcedure.scala | 2 +-
.../procedures/HdfsParquetImportProcedure.scala | 14 +-
.../hudi/command/procedures/HoodieProcedures.scala | 24 +-
.../procedures/InitMetadataTableProcedure.scala | 84 ++
.../RepairAddpartitionmetaProcedure.scala | 89 ++
.../RepairCorruptedCleanFilesProcedure.scala | 86 ++
.../procedures/RepairDeduplicateProcedure.scala | 86 ++
.../RepairMigratePartitionMetaProcedure.scala | 112 +++
.../RepairOverwriteHoodiePropsProcedure.scala | 89 ++
.../RollbackToInstantTimeProcedure.scala | 2 +
...re.scala => RollbackToSavepointProcedure.scala} | 12 +-
.../command/procedures/RunBootstrapProcedure.scala | 30 +-
.../command/procedures/RunCleanProcedure.scala | 95 +++
.../procedures/RunClusteringProcedure.scala | 2 +-
.../procedures/ShowArchivedCommitsProcedure.scala | 6 +-
.../procedures/ShowBootstrapMappingProcedure.scala | 10 +-
.../procedures/ShowCommitFilesProcedure.scala | 2 +-
.../command/procedures/ShowCommitsProcedure.scala | 2 +-
.../procedures/ShowFileSystemViewProcedure.scala | 2 +-
.../procedures/ShowFsPathDetailProcedure.scala | 112 +++
.../ShowMetadataTableFilesProcedure.scala | 88 ++
.../ShowMetadataTablePartitionsProcedure.scala | 81 ++
...scala => ShowMetadataTableStatsProcedure.scala} | 63 +-
.../procedures/StatsFileSizeProcedure.scala | 4 +-
.../procedures/UpgradeOrDowngradeProcedure.scala | 107 +++
.../procedures/ValidateHoodieSyncProcedure.scala | 208 +++++
.../ValidateMetadataTableFilesProcedure.scala | 147 ++++
.../spark/sql/parser/HoodieCommonSqlParser.scala | 8 +
.../hudi-spark/src/test/java/HoodieJavaApp.java | 18 +-
.../src/test/java/HoodieJavaGenerateApp.java | 18 +-
.../src/test/java/HoodieJavaStreamingApp.java | 18 +-
.../java/org/apache/hudi/TestDataSourceUtils.java | 91 +-
.../TestHoodieDatasetBulkInsertHelper.java | 98 ++-
.../hudi/keygen/TestComplexKeyGenerator.java | 22 +-
.../apache/hudi/keygen/TestCustomKeyGenerator.java | 43 +-
.../keygen/TestGlobalDeleteRecordGenerator.java | 2 -
.../keygen/TestNonpartitionedKeyGenerator.java | 5 +-
.../apache/hudi/keygen/TestSimpleKeyGenerator.java | 33 +-
.../keygen/TestTimestampBasedKeyGenerator.java | 15 +-
.../apache/hudi/testutils/DataSourceTestUtils.java | 14 +-
.../hudi/testutils/KeyGeneratorTestUtilities.java | 2 +-
.../src/test/resources/table-config.properties | 0
.../org/apache/hudi/ScalaAssertionSupport.scala | 30 +-
.../org/apache/hudi/TestAvroConversionUtils.scala | 57 +-
.../org/apache/hudi/TestDataSkippingUtils.scala | 2 +-
.../org/apache/hudi/TestDataSourceDefaults.scala | 716 ++++++++--------
.../hudi/TestGenericRecordAndRowConsistency.scala | 3 +-
.../org/apache/hudi/TestHoodieFileIndex.scala | 10 +-
.../org/apache/hudi/TestHoodieRelations.scala | 54 ++
.../org/apache/hudi/TestHoodieSparkSqlWriter.scala | 16 +-
.../org/apache/hudi/TestHoodieSparkUtils.scala | 87 +-
.../apache/hudi/functional/TestCOWDataSource.scala | 43 +-
.../hudi/functional/TestColumnStatsIndex.scala | 168 ++--
.../functional/TestDataSourceForBootstrap.scala | 42 +-
.../apache/hudi/functional/TestMORDataSource.scala | 152 +++-
.../functional/TestParquetColumnProjection.scala | 9 +-
.../org/apache/spark/sql/avro/TestAvroSerDe.scala | 61 ++
.../spark/sql/avro/TestSchemaConverters.scala | 40 +
.../spark/sql/hudi/HoodieSparkSqlTestBase.scala | 23 +-
.../sql/hudi/TestAlterTableDropPartition.scala | 11 +-
.../apache/spark/sql/hudi/TestDeleteTable.scala | 39 +-
.../apache/spark/sql/hudi/TestInsertTable.scala | 209 ++++-
.../apache/spark/sql/hudi/TestMergeIntoTable.scala | 183 ++++-
.../hudi/TestNestedSchemaPruningOptimization.scala | 122 +++
.../apache/spark/sql/hudi/TestShowPartitions.scala | 42 +-
.../org/apache/spark/sql/hudi/TestSpark3DDL.scala | 97 ++-
.../org/apache/spark/sql/hudi/TestSqlConf.scala | 37 +-
.../spark/sql/hudi/TestTimeTravelTable.scala | 44 +
.../apache/spark/sql/hudi/TestUpdateTable.scala | 28 +-
.../hudi/procedure/TestBootstrapProcedure.scala | 12 +-
.../sql/hudi/procedure/TestCallCommandParser.scala | 11 +-
.../sql/hudi/procedure/TestCallProcedure.scala | 4 +-
.../sql/hudi/procedure/TestCleanProcedure.scala | 64 ++
.../sql/hudi/procedure/TestCommitsProcedure.scala | 4 +-
.../hudi/procedure/TestCopyToTableProcedure.scala | 353 ++++++++
.../procedure/TestExportInstantsProcedure.scala | 2 +-
.../procedure/TestHdfsParquetImportProcedure.scala | 20 +-
.../sql/hudi/procedure/TestMetadataProcedure.scala | 262 ++++++
.../sql/hudi/procedure/TestRepairsProcedure.scala | 507 ++++++++++++
.../hudi/procedure/TestSavepointsProcedure.scala | 18 +-
...e.scala => TestShowFsPathDetailProcedure.scala} | 12 +-
.../sql/hudi/procedure/TestStatsProcedure.scala | 6 +-
.../TestUpgradeOrDowngradeProcedure.scala | 97 +++
hudi-spark-datasource/hudi-spark2-common/pom.xml | 2 +-
hudi-spark-datasource/hudi-spark2/pom.xml | 4 +-
.../org/apache/hudi/internal/DefaultSource.java | 4 +-
.../org/apache/hudi/Spark2HoodieFileScanRDD.scala} | 13 +-
.../spark/sql/HoodieSpark2CatalystPlanUtils.scala | 81 ++
.../apache/spark/sql/adapter/Spark2Adapter.scala | 110 ++-
.../apache/spark/sql/avro/AvroDeserializer.scala | 2 +
hudi-spark-datasource/hudi-spark3-common/pom.xml | 2 +-
.../apache/hudi/spark3/internal/DefaultSource.java | 4 +-
.../apache/hudi/spark3/internal/ReflectUtil.java | 2 +-
.../spark/sql/HoodieSpark3CatalystPlanUtils.scala | 85 ++
.../apache/spark/sql/HoodieSpark3SqlUtils.scala | 45 -
.../spark/sql/adapter/BaseSpark3Adapter.scala | 103 +--
hudi-spark-datasource/hudi-spark3.1.x/pom.xml | 4 +-
.../apache/hudi/Spark31HoodieFileScanRDD.scala} | 13 +-
... => HoodieSpark31CatalystExpressionUtils.scala} | 2 +-
.../spark/sql/HoodieSpark31CatalystPlanUtils.scala | 18 +-
.../apache/spark/sql/adapter/Spark3_1Adapter.scala | 42 +-
.../apache/spark/sql/avro/AvroDeserializer.scala | 2 +
.../datasources/Spark31NestedSchemaPruning.scala | 197 +++++
... => Spark312ResolveHudiAlterTableCommand.scala} | 2 +-
...scala => HoodieSpark3_1ExtendedSqlParser.scala} | 2 +-
.../{hudi-spark3 => hudi-spark3.2.x}/pom.xml | 12 +-
.../src/main/antlr4/imports/SqlBase.g4 | 0
.../apache/hudi/spark/sql/parser/HoodieSqlBase.g4 | 0
...Spark32HoodieVectorizedParquetRecordReader.java | 0
...org.apache.spark.sql.sources.DataSourceRegister | 0
.../apache/hudi/Spark32HoodieFileScanRDD.scala} | 13 +-
.../org/apache/hudi/Spark3DefaultSource.scala | 0
.../HoodieSpark32CatalystExpressionUtils.scala} | 2 +-
.../spark/sql/HoodieSpark32CatalystPlanUtils.scala | 27 +-
.../apache/spark/sql/adapter/Spark3_2Adapter.scala | 57 +-
.../apache/spark/sql/avro/AvroDeserializer.scala | 2 +
.../org/apache/spark/sql/avro/AvroSerializer.scala | 0
.../org/apache/spark/sql/avro/AvroUtils.scala | 0
.../sql/avro/HoodieSpark3_2AvroDeserializer.scala | 0
.../sql/avro/HoodieSpark3_2AvroSerializer.scala | 0
.../plans/logical/TimeTravelRelation.scala | 0
.../sql/connector/catalog/HoodieIdentifier.scala | 0
.../datasources/Spark32NestedSchemaPruning.scala | 197 +++++
.../parquet/Spark32DataSourceUtils.scala | 0
.../parquet/Spark32HoodieParquetFileFormat.scala | 0
.../Spark32ResolveHudiAlterTableCommand.scala} | 2 +-
.../sql/hudi/analysis/HoodieSpark3Analysis.scala | 0
.../spark/sql/hudi/catalog/BasicStagedTable.scala | 0
.../spark/sql/hudi/catalog/HoodieCatalog.scala | 30 +-
.../sql/hudi/catalog/HoodieInternalV2Table.scala | 0
.../spark/sql/hudi/catalog/HoodieStagedTable.scala | 0
.../spark/sql/hudi/catalog/TableCreationMode.java | 0
.../spark/sql/hudi/command/AlterTableCommand.scala | 0
.../HoodieSpark3_2ExtendedSqlAstBuilder.scala | 2 +-
.../parser/HoodieSpark3_2ExtendedSqlParser.scala | 32 +-
.../TestHoodieBulkInsertDataInternalWriter.java | 0
.../TestHoodieDataSourceInternalBatchWrite.java | 0
.../hudi/spark3/internal/TestReflectUtil.java | 0
.../test/resources/log4j-surefire-quiet.properties | 0
.../src/test/resources/log4j-surefire.properties | 0
.../{hudi-spark3 => hudi-spark3.3.x}/pom.xml | 75 +-
.../src/main/antlr4/imports/SqlBase.g4 | 0
.../apache/hudi/spark/sql/parser/HoodieSqlBase.g4 | 0
...park33HoodieVectorizedParquetRecordReader.java} | 4 +-
...org.apache.spark.sql.sources.DataSourceRegister | 0
.../apache/hudi/Spark33HoodieFileScanRDD.scala} | 13 +-
.../org/apache/hudi/Spark3DefaultSource.scala | 0
.../HoodieSpark33CatalystExpressionUtils.scala} | 6 +-
.../spark/sql/HoodieSpark33CatalystPlanUtils.scala | 27 +-
.../apache/spark/sql/adapter/Spark3_3Adapter.scala | 80 ++
.../apache/spark/sql/avro/AvroDeserializer.scala | 173 ++--
.../org/apache/spark/sql/avro/AvroSerializer.scala | 151 ++--
.../org/apache/spark/sql/avro/AvroUtils.scala | 228 ++++++
.../sql/avro/HoodieSpark3_3AvroDeserializer.scala} | 2 +-
.../sql/avro/HoodieSpark3_3AvroSerializer.scala} | 2 +-
.../plans/logical/TimeTravelRelation.scala | 0
.../sql/connector/catalog/HoodieIdentifier.scala | 0
.../datasources/Spark33NestedSchemaPruning.scala | 195 +++++
.../parquet/Spark33DataSourceUtils.scala} | 2 +-
.../parquet/Spark33HoodieParquetFileFormat.scala} | 18 +-
.../Spark33ResolveHudiAlterTableCommand.scala} | 4 +-
.../sql/hudi/analysis/HoodieSpark3Analysis.scala | 16 +-
.../spark/sql/hudi/catalog/BasicStagedTable.scala | 0
.../spark/sql/hudi/catalog/HoodieCatalog.scala | 28 +-
.../sql/hudi/catalog/HoodieInternalV2Table.scala | 0
.../spark/sql/hudi/catalog/HoodieStagedTable.scala | 0
.../spark/sql/hudi/catalog/TableCreationMode.java | 0
.../spark/sql/hudi/command/AlterTableCommand.scala | 0
.../HoodieSpark3_3ExtendedSqlAstBuilder.scala} | 29 +-
.../parser/HoodieSpark3_3ExtendedSqlParser.scala} | 40 +-
.../TestHoodieBulkInsertDataInternalWriter.java | 0
.../TestHoodieDataSourceInternalBatchWrite.java | 0
.../hudi/spark3/internal/TestReflectUtil.java | 0
.../test/resources/log4j-surefire-quiet.properties | 0
.../src/test/resources/log4j-surefire.properties | 0
hudi-spark-datasource/pom.xml | 2 +-
hudi-sync/hudi-adb-sync/pom.xml | 14 +-
.../hudi/sync/adb/AbstractAdbSyncHoodieClient.java | 128 ---
.../org/apache/hudi/sync/adb/AdbSyncConfig.java | 223 +++--
.../java/org/apache/hudi/sync/adb/AdbSyncTool.java | 169 ++--
.../apache/hudi/sync/adb/HoodieAdbJdbcClient.java | 160 ++--
.../apache/hudi/sync/adb/TestAdbSyncConfig.java | 91 +-
hudi-sync/hudi-datahub-sync/pom.xml | 14 +-
.../hudi/sync/datahub/DataHubSyncClient.java | 83 +-
.../apache/hudi/sync/datahub/DataHubSyncTool.java | 42 +-
.../sync/datahub/config/DataHubSyncConfig.java | 70 +-
.../config/HoodieDataHubDatasetIdentifier.java | 13 +-
.../sync/datahub/config/TestDataHubSyncConfig.java | 26 +-
hudi-sync/hudi-hive-sync/pom.xml | 14 +-
.../hudi/hive/AbstractHiveSyncHoodieClient.java | 142 ----
.../hive/HiveStylePartitionValueExtractor.java | 2 +
.../java/org/apache/hudi/hive/HiveSyncConfig.java | 368 +++------
.../org/apache/hudi/hive/HiveSyncConfigHolder.java | 128 +++
.../java/org/apache/hudi/hive/HiveSyncTool.java | 244 +++---
...ieHiveClient.java => HoodieHiveSyncClient.java} | 161 ++--
.../hudi/hive/MultiPartKeysValueExtractor.java | 14 +-
.../apache/hudi/hive/NonPartitionedExtractor.java | 15 +-
.../SlashEncodedDayPartitionValueExtractor.java | 15 +-
.../SlashEncodedHourPartitionValueExtractor.java | 15 +-
.../java/org/apache/hudi/hive/ddl/DDLExecutor.java | 4 +-
.../org/apache/hudi/hive/ddl/HMSDDLExecutor.java | 83 +-
.../apache/hudi/hive/ddl/HiveQueryDDLExecutor.java | 34 +-
.../org/apache/hudi/hive/ddl/JDBCExecutor.java | 35 +-
.../hudi/hive/ddl/QueryBasedDDLExecutor.java | 64 +-
.../hive/replication/GlobalHiveSyncConfig.java | 56 +-
.../hudi/hive/replication/GlobalHiveSyncTool.java | 40 +-
...Config.java => HiveSyncGlobalCommitParams.java} | 63 +-
.../hive/replication/HiveSyncGlobalCommitTool.java | 48 +-
.../hive/replication/ReplicationStateSync.java | 24 +-
.../lock}/HiveMetastoreBasedLockProvider.java | 17 +-
.../apache/hudi/hive/util/HivePartitionUtil.java | 30 +-
.../org/apache/hudi/hive/util/HiveSchemaUtil.java | 28 +-
.../hudi/hive/TestHiveSyncGlobalCommitTool.java | 128 ---
.../org/apache/hudi/hive/TestHiveSyncTool.java | 295 +++----
.../TestHiveMetastoreBasedLockProvider.java | 2 +-
.../replication/TestHiveSyncGlobalCommitTool.java | 154 ++++
.../testutils/HiveSyncFunctionalTestHarness.java | 54 +-
.../{TestCluster.java => HiveTestCluster.java} | 64 +-
.../hudi/hive/testutils/HiveTestService.java | 167 ++--
.../apache/hudi/hive/testutils/HiveTestUtil.java | 43 +-
hudi-sync/hudi-sync-common/pom.xml | 2 +-
.../hudi/sync/common/AbstractSyncHoodieClient.java | 276 -------
.../hudi/sync/common/HoodieMetaSyncOperations.java | 196 +++++
.../apache/hudi/sync/common/HoodieSyncClient.java | 161 ++++
.../apache/hudi/sync/common/HoodieSyncConfig.java | 211 ++---
.../apache/hudi/sync/common/HoodieSyncTool.java | 62 ++
.../apache/hudi/sync/common/model/FieldSchema.java | 83 ++
.../hudi/sync/common/model/PartitionEvent.java | 50 ++
.../common/model}/PartitionValueExtractor.java | 15 +-
.../apache/hudi/sync/common/util/ConfigUtils.java | 20 +-
.../SparkDataSourceTableUtils.java} | 52 +-
.../hudi/sync/common/util/SyncUtilHelpers.java | 65 +-
.../hudi/sync/common/TestHoodieSyncConfig.java | 131 +++
.../hudi/sync/common/util/TestConfigUtils.java | 68 ++
.../hudi/sync/common/util/TestSyncUtilHelpers.java | 75 +-
hudi-sync/pom.xml | 2 +-
hudi-timeline-service/pom.xml | 14 +-
.../hudi/timeline/service/RequestHandler.java | 23 +-
.../hudi/timeline/service/TimelineService.java | 10 -
hudi-utilities/pom.xml | 14 +-
.../hudi/utilities/HoodieDropPartitionsTool.java | 400 +++++++++
.../org/apache/hudi/utilities/HoodieIndexer.java | 36 +-
.../utilities/deltastreamer/BootstrapExecutor.java | 15 +-
.../hudi/utilities/deltastreamer/DeltaSync.java | 12 +-
.../utilities/transform/AWSDmsTransformer.java | 2 +-
.../hudi/utilities/TestHiveIncrementalPuller.java | 48 +-
.../apache/hudi/utilities/TestHoodieIndexer.java | 95 ++-
.../functional/HoodieDeltaStreamerTestBase.java | 29 +-
.../TestAWSDatabaseMigrationServiceSource.java | 2 +-
.../functional/TestHoodieDeltaStreamer.java | 37 +-
.../TestHoodieDeltaStreamerWithMultiWriter.java | 18 +-
.../utilities/sources/TestHoodieIncrSource.java | 7 +-
.../utilities/testutils/UtilitiesTestBase.java | 61 +-
packaging/hudi-aws-bundle/pom.xml | 2 +-
packaging/hudi-datahub-sync-bundle/pom.xml | 2 +-
packaging/hudi-flink-bundle/pom.xml | 14 +-
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 | 16 +-
packaging/hudi-kafka-connect-bundle/pom.xml | 16 +-
packaging/hudi-presto-bundle/pom.xml | 4 +-
packaging/hudi-spark-bundle/pom.xml | 2 +-
packaging/hudi-timeline-server-bundle/pom.xml | 14 +-
packaging/hudi-trino-bundle/pom.xml | 2 +-
packaging/hudi-utilities-bundle/pom.xml | 2 +-
packaging/hudi-utilities-slim-bundle/pom.xml | 2 +-
pom.xml | 161 +++-
rfc/README.md | 18 +-
rfc/rfc-51/arch.jpg | Bin 0 -> 166734 bytes
rfc/rfc-51/points.jpg | Bin 0 -> 250122 bytes
rfc/rfc-51/query_cdc_on_mor.jpg | Bin 0 -> 170119 bytes
rfc/rfc-51/read_cdc_log_file.jpg | Bin 0 -> 210750 bytes
rfc/rfc-51/rfc-51.md | 281 +++++++
rfc/rfc-51/scenario-definition.jpg | Bin 0 -> 175342 bytes
rfc/rfc-55/hudi-sync-class-diagram.png | Bin 0 -> 418052 bytes
rfc/rfc-55/hudi-sync-flows.png | Bin 0 -> 139211 bytes
rfc/rfc-55/rfc-55.md | 173 ++++
750 files changed, 25608 insertions(+), 9710 deletions(-)
copy hudi-integ-test/src/test/resources/unit-test-cow-dag.yaml =>
docker/demo/config/test-suite/deltastreamer-hive-sync-presto.yaml (72%)
rename
hudi-cli/src/main/java/org/apache/hudi/cli/commands/{HoodieSyncCommand.java =>
HoodieSyncValidateCommand.java} (98%)
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/client/transaction/lock/FileSystemBasedLockProvider.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/config/HoodieArchivalConfig.java
create mode 100644
hudi-client/hudi-client-common/src/main/java/org/apache/hudi/config/HoodieCleanConfig.java
copy
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/NonPartitionedExtractor.java
=>
hudi-client/hudi-spark-client/src/main/java/org/apache/hudi/index/hbase/RebalancedSparkHoodieHBaseIndex.java
(55%)
delete mode 100644
hudi-client/hudi-spark-client/src/main/java/org/apache/hudi/io/storage/row/HoodieRowCreateHandleWithoutMetaFields.java
delete mode 100644
hudi-client/hudi-spark-client/src/main/java/org/apache/hudi/keygen/RowKeyGeneratorHelper.java
create mode 100644
hudi-client/hudi-spark-client/src/main/scala/org/apache/hudi/unsafe/UTF8StringBuilder.java
create mode 100644
hudi-client/hudi-spark-client/src/main/scala/org/apache/spark/sql/HoodieCatalystPlansUtils.scala
create mode 100644
hudi-client/hudi-spark-client/src/main/scala/org/apache/spark/sql/HoodieUnsafeRowUtils.scala
create mode 100644
hudi-client/hudi-spark-client/src/test/java/org/apache/hudi/client/TestFileBasedLockProvider.java
delete mode 100644
hudi-client/hudi-spark-client/src/test/scala/org/apache/hudi/keygen/TestRowGeneratorHelper.scala
create mode 100644
hudi-client/hudi-spark-client/src/test/scala/org/apache/spark/sql/TestHoodieUnsafeRowUtils.scala
create mode 100644
hudi-common/src/main/java/org/apache/hudi/common/data/HoodieBaseListData.java
delete mode 100644
hudi-common/src/main/java/org/apache/hudi/common/data/HoodieList.java
create mode 100644
hudi-common/src/main/java/org/apache/hudi/common/data/HoodieListData.java
create mode 100644
hudi-common/src/main/java/org/apache/hudi/common/data/HoodieListPairData.java
delete mode 100644
hudi-common/src/main/java/org/apache/hudi/common/data/HoodieMapPair.java
copy {hudi-spark-datasource/hudi-spark/src/main/java/org/apache/hudi/payload
=>
hudi-common/src/main/java/org/apache/hudi/common/model}/AWSDmsAvroPayload.java
(97%)
create mode 100644
hudi-common/src/main/java/org/apache/hudi/common/util/Either.java
copy
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/NonPartitionedExtractor.java
=>
hudi-common/src/main/java/org/apache/hudi/exception/HoodieCatalogException.java
(65%)
rename
hudi-common/src/test/java/org/apache/hudi/common/data/{TestHoodieList.java =>
TestHoodieListData.java} (64%)
rename
hudi-common/src/test/java/org/apache/hudi/common/data/{TestHoodieMapPair.java
=> TestHoodieListDataPairData.java} (75%)
rename {hudi-spark-datasource/hudi-spark/src/test/java/org/apache/hudi/payload
=>
hudi-common/src/test/java/org/apache/hudi/common/model}/TestAWSDmsAvroPayload.java
(97%)
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/sink/compact/strategy/CompactionPlanStrategies.java
copy
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/NonPartitionedExtractor.java
=>
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/sink/compact/strategy/CompactionPlanStrategy.java
(60%)
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/stats/ColumnStatsIndices.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/stats/ExpressionEvaluator.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/table/catalog/HiveSchemaUtils.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/table/catalog/HoodieCatalogUtil.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/table/catalog/HoodieHiveCatalog.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/table/catalog/TypeInfoLogicalTypeVisitor.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/util/ExpressionUtils.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/util/HoodiePipeline.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/sink/compact/TestCompactionPlanStrategy.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/source/stats/TestColumnStatsIndices.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/source/stats/TestExpressionEvaluator.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/table/catalog/HoodieCatalogTestUtils.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/table/catalog/TestHoodieCatalogFactory.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/table/catalog/TestHoodieHiveCatalog.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/utils/TestAvroSchemaConverter.java
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/resources/hive-site.xml
create mode 100644
hudi-flink-datasource/hudi-flink/src/test/resources/test-catalog-factory-conf/hive-site.xml
copy
hudi-spark-datasource/hudi-spark3/src/main/scala/org/apache/spark/sql/hudi/catalog/TableCreationMode.java
=>
hudi-flink-datasource/hudi-flink1.13.x/src/main/java/org/apache/hudi/adapter/DataStreamScanProviderAdapter.java
(72%)
copy
hudi-spark-datasource/hudi-spark3/src/main/scala/org/apache/spark/sql/hudi/catalog/TableCreationMode.java
=>
hudi-flink-datasource/hudi-flink1.13.x/src/main/java/org/apache/hudi/adapter/DataStreamSinkProviderAdapter.java
(72%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/ParquetSplitReaderUtil.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapArrayVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapMapColumnVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapRowColumnVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/ParquetDecimalVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/AbstractColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ArrayColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/BaseVectorizedColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/FixedLenBytesColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/Int64TimestampColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/MapColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetColumnarRowSplitReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetDataColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetDataColumnReaderFactory.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/RowColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.13.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/RunLengthDecoder.java
(98%)
copy
hudi-spark-datasource/hudi-spark3/src/main/scala/org/apache/spark/sql/hudi/catalog/TableCreationMode.java
=>
hudi-flink-datasource/hudi-flink1.14.x/src/main/java/org/apache/hudi/adapter/DataStreamScanProviderAdapter.java
(72%)
copy
hudi-spark-datasource/hudi-spark3/src/main/scala/org/apache/spark/sql/hudi/catalog/TableCreationMode.java
=>
hudi-flink-datasource/hudi-flink1.14.x/src/main/java/org/apache/hudi/adapter/DataStreamSinkProviderAdapter.java
(72%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/ParquetSplitReaderUtil.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapArrayVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapMapColumnVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapRowColumnVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/ParquetDecimalVector.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/AbstractColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ArrayColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/BaseVectorizedColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/FixedLenBytesColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/Int64TimestampColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/MapColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetColumnarRowSplitReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetDataColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetDataColumnReaderFactory.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/RowColumnReader.java
(100%)
copy hudi-flink-datasource/{hudi-flink =>
hudi-flink1.14.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/RunLengthDecoder.java
(98%)
copy hudi-flink-datasource/{hudi-flink1.14.x => hudi-flink1.15.x}/pom.xml (75%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/adapter/AbstractStreamOperatorAdapter.java
(100%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/adapter/AbstractStreamOperatorFactoryAdapter.java
(100%)
copy
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/NonPartitionedExtractor.java
=>
hudi-flink-datasource/hudi-flink1.15.x/src/main/java/org/apache/hudi/adapter/DataStreamScanProviderAdapter.java
(51%)
copy
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/NonPartitionedExtractor.java
=>
hudi-flink-datasource/hudi-flink1.15.x/src/main/java/org/apache/hudi/adapter/DataStreamSinkProviderAdapter.java
(51%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/adapter/MailboxExecutorAdapter.java
(100%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/adapter/RateLimiterAdapter.java
(100%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/adapter/Utils.java (75%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/ParquetSplitReaderUtil.java
(95%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapArrayVector.java
(83%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapMapColumnVector.java
(85%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/HeapRowColumnVector.java
(79%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/ParquetDecimalVector.java
(89%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/AbstractColumnReader.java
(98%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ArrayColumnReader.java
(95%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/BaseVectorizedColumnReader.java
(99%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/FixedLenBytesColumnReader.java
(92%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/Int64TimestampColumnReader.java
(96%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/MapColumnReader.java
(95%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetColumnarRowSplitReader.java
(97%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetDataColumnReader.java
(100%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/ParquetDataColumnReaderFactory.java
(100%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/RowColumnReader.java
(95%)
rename hudi-flink-datasource/{hudi-flink =>
hudi-flink1.15.x}/src/main/java/org/apache/hudi/table/format/cow/vector/reader/RunLengthDecoder.java
(96%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/test/java/org/apache/hudi/adapter/OutputAdapter.java
(100%)
copy
hudi-client/hudi-spark-client/src/main/scala/org/apache/hudi/util/JFunction.scala
=>
hudi-flink-datasource/hudi-flink1.15.x/src/test/java/org/apache/hudi/adapter/StateInitializationContextAdapter.java
(67%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/test/java/org/apache/hudi/adapter/StreamingRuntimeContextAdapter.java
(100%)
copy hudi-flink-datasource/{hudi-flink1.14.x =>
hudi-flink1.15.x}/src/test/java/org/apache/hudi/adapter/TestTableEnvs.java
(100%)
create mode 100644
hudi-hadoop-mr/src/test/java/org/apache/hudi/hadoop/TestHoodieCopyOnWriteTableInputFormat.java
create mode 100644
hudi-hadoop-mr/src/test/java/org/apache/hudi/hadoop/realtime/TestHoodieMergeOnReadTableInputFormat.java
create mode 100644
hudi-integ-test/src/main/java/org/apache/hudi/integ/testsuite/dag/nodes/BaseQueryNode.java
create mode 100644
hudi-integ-test/src/main/java/org/apache/hudi/integ/testsuite/dag/nodes/PrestoQueryNode.java
create mode 100644
hudi-integ-test/src/main/java/org/apache/hudi/integ/testsuite/dag/nodes/TrinoQueryNode.java
delete mode 100644
hudi-spark-datasource/hudi-spark-common/src/main/java/org/apache/hudi/HoodieDatasetBulkInsertHelper.java
delete mode 100644
hudi-spark-datasource/hudi-spark-common/src/main/java/org/apache/hudi/SparkRowWriteHelper.java
create mode 100644
hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/HoodieCatalystUtils.scala
create mode 100644
hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/HoodieDatasetBulkInsertHelper.scala
delete mode 100644
hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/HoodieDatasetUtils.scala
rename
hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/spark/sql/{HoodieUnsafeRDDUtils.scala
=> HoodieUnsafeUtils.scala} (50%)
copy hudi-common/src/main/java/org/apache/hudi/TypeUtils.java =>
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/DeDupeType.scala
(66%)
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/DedupeSparkJob.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/SparkHelpers.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/CopyToTableProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/CreateMetadataTableProcedure.scala
rename
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/{CreateSavepointsProcedure.scala
=> CreateSavepointProcedure.scala} (88%)
copy
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/{DeleteMarkerProcedure.scala
=> DeleteMetadataTableProcedure.scala} (51%)
rename
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/{DeleteSavepointsProcedure.scala
=> DeleteSavepointProcedure.scala} (89%)
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/InitMetadataTableProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/RepairAddpartitionmetaProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/RepairCorruptedCleanFilesProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/RepairDeduplicateProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/RepairMigratePartitionMetaProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/RepairOverwriteHoodiePropsProcedure.scala
rename
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/{RollbackSavepointsProcedure.scala
=> RollbackToSavepointProcedure.scala} (89%)
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/RunCleanProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/ShowFsPathDetailProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/ShowMetadataTableFilesProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/ShowMetadataTablePartitionsProcedure.scala
copy
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/{DeleteMarkerProcedure.scala
=> ShowMetadataTableStatsProcedure.scala} (50%)
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/UpgradeOrDowngradeProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/ValidateHoodieSyncProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/main/scala/org/apache/spark/sql/hudi/command/procedures/ValidateMetadataTableFilesProcedure.scala
copy {hudi-cli =>
hudi-spark-datasource/hudi-spark}/src/test/resources/table-config.properties
(100%)
copy hudi-common/src/main/java/org/apache/hudi/TypeUtils.java =>
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/hudi/ScalaAssertionSupport.scala
(56%)
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/hudi/TestHoodieRelations.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/avro/TestAvroSerDe.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/avro/TestSchemaConverters.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/TestNestedSchemaPruningOptimization.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestCleanProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestCopyToTableProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestMetadataProcedure.scala
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestRepairsProcedure.scala
copy
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/{TestExportInstantsProcedure.scala
=> TestShowFsPathDetailProcedure.scala} (76%)
create mode 100644
hudi-spark-datasource/hudi-spark/src/test/scala/org/apache/spark/sql/hudi/procedure/TestUpgradeOrDowngradeProcedure.scala
copy
hudi-spark-datasource/{hudi-spark-common/src/main/scala/org/apache/hudi/HoodieFileScanRDD.scala
=> hudi-spark2/src/main/scala/org/apache/hudi/Spark2HoodieFileScanRDD.scala}
(71%)
create mode 100644
hudi-spark-datasource/hudi-spark2/src/main/scala/org/apache/spark/sql/HoodieSpark2CatalystPlanUtils.scala
create mode 100644
hudi-spark-datasource/hudi-spark3-common/src/main/scala/org/apache/spark/sql/HoodieSpark3CatalystPlanUtils.scala
delete mode 100644
hudi-spark-datasource/hudi-spark3-common/src/main/scala/org/apache/spark/sql/HoodieSpark3SqlUtils.scala
copy
hudi-spark-datasource/{hudi-spark-common/src/main/scala/org/apache/hudi/HoodieFileScanRDD.scala
=>
hudi-spark3.1.x/src/main/scala/org/apache/hudi/Spark31HoodieFileScanRDD.scala}
(71%)
rename
hudi-spark-datasource/hudi-spark3.1.x/src/main/scala/org/apache/spark/sql/{HoodieSpark3_1CatalystExpressionUtils.scala
=> HoodieSpark31CatalystExpressionUtils.scala} (98%)
copy
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/NonPartitionedExtractor.java
=>
hudi-spark-datasource/hudi-spark3.1.x/src/main/scala/org/apache/spark/sql/HoodieSpark31CatalystPlanUtils.scala
(61%)
create mode 100644
hudi-spark-datasource/hudi-spark3.1.x/src/main/scala/org/apache/spark/sql/execution/datasources/Spark31NestedSchemaPruning.scala
rename
hudi-spark-datasource/hudi-spark3.1.x/src/main/scala/org/apache/spark/sql/hudi/{ResolveHudiAlterTableCommand312.scala
=> Spark312ResolveHudiAlterTableCommand.scala} (99%)
rename
hudi-spark-datasource/hudi-spark3.1.x/src/main/scala/org/apache/spark/sql/parser/{HoodieSpark312ExtendedSqlParser.scala
=> HoodieSpark3_1ExtendedSqlParser.scala} (95%)
copy hudi-spark-datasource/{hudi-spark3 => hudi-spark3.2.x}/pom.xml (96%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/antlr4/imports/SqlBase.g4 (100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/antlr4/org/apache/hudi/spark/sql/parser/HoodieSqlBase.g4
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/java/org/apache/spark/sql/execution/datasources/parquet/Spark32HoodieVectorizedParquetRecordReader.java
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
(100%)
copy
hudi-spark-datasource/{hudi-spark-common/src/main/scala/org/apache/hudi/HoodieFileScanRDD.scala
=>
hudi-spark3.2.x/src/main/scala/org/apache/hudi/Spark32HoodieFileScanRDD.scala}
(71%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/hudi/Spark3DefaultSource.scala (100%)
copy
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/HoodieSpark3_2CatalystExpressionUtils.scala
=>
hudi-spark3.2.x/src/main/scala/org/apache/spark/sql/HoodieSpark32CatalystExpressionUtils.scala}
(98%)
copy hudi-common/src/main/java/org/apache/hudi/TypeUtils.java =>
hudi-spark-datasource/hudi-spark3.2.x/src/main/scala/org/apache/spark/sql/HoodieSpark32CatalystPlanUtils.scala
(55%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/adapter/Spark3_2Adapter.scala
(54%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/avro/AvroDeserializer.scala
(99%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/avro/AvroSerializer.scala
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/avro/AvroUtils.scala (100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/avro/HoodieSpark3_2AvroDeserializer.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/avro/HoodieSpark3_2AvroSerializer.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/catalyst/plans/logical/TimeTravelRelation.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/connector/catalog/HoodieIdentifier.scala
(100%)
create mode 100644
hudi-spark-datasource/hudi-spark3.2.x/src/main/scala/org/apache/spark/sql/execution/datasources/Spark32NestedSchemaPruning.scala
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/Spark32DataSourceUtils.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/Spark32HoodieParquetFileFormat.scala
(100%)
copy
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/hudi/ResolveHudiAlterTableCommandSpark32.scala
=>
hudi-spark3.2.x/src/main/scala/org/apache/spark/sql/hudi/Spark32ResolveHudiAlterTableCommand.scala}
(98%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/hudi/analysis/HoodieSpark3Analysis.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/BasicStagedTable.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/HoodieCatalog.scala
(93%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/HoodieInternalV2Table.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/HoodieStagedTable.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/TableCreationMode.java
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/hudi/command/AlterTableCommand.scala
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/parser/HoodieSpark3_2ExtendedSqlAstBuilder.scala
(99%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/main/scala/org/apache/spark/sql/parser/HoodieSpark3_2ExtendedSqlParser.scala
(88%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/test/java/org/apache/hudi/spark3/internal/TestHoodieBulkInsertDataInternalWriter.java
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/test/java/org/apache/hudi/spark3/internal/TestHoodieDataSourceInternalBatchWrite.java
(100%)
copy hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/test/java/org/apache/hudi/spark3/internal/TestReflectUtil.java
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/test/resources/log4j-surefire-quiet.properties (100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.2.x}/src/test/resources/log4j-surefire.properties (100%)
rename hudi-spark-datasource/{hudi-spark3 => hudi-spark3.3.x}/pom.xml (90%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/antlr4/imports/SqlBase.g4 (100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/antlr4/org/apache/hudi/spark/sql/parser/HoodieSqlBase.g4
(100%)
rename
hudi-spark-datasource/{hudi-spark3/src/main/java/org/apache/spark/sql/execution/datasources/parquet/Spark32HoodieVectorizedParquetRecordReader.java
=>
hudi-spark3.3.x/src/main/java/org/apache/spark/sql/execution/datasources/parquet/Spark33HoodieVectorizedParquetRecordReader.java}
(98%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/resources/META-INF/services/org.apache.spark.sql.sources.DataSourceRegister
(100%)
rename
hudi-spark-datasource/{hudi-spark-common/src/main/scala/org/apache/hudi/HoodieFileScanRDD.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/hudi/Spark33HoodieFileScanRDD.scala}
(67%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/hudi/Spark3DefaultSource.scala (100%)
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/HoodieSpark3_2CatalystExpressionUtils.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/HoodieSpark33CatalystExpressionUtils.scala}
(94%)
rename hudi-common/src/main/java/org/apache/hudi/TypeUtils.java =>
hudi-spark-datasource/hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/HoodieSpark33CatalystPlanUtils.scala
(55%)
create mode 100644
hudi-spark-datasource/hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/adapter/Spark3_3Adapter.scala
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/avro/AvroDeserializer.scala
(82%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/avro/AvroSerializer.scala
(73%)
create mode 100644
hudi-spark-datasource/hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/avro/AvroUtils.scala
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/avro/HoodieSpark3_2AvroDeserializer.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/avro/HoodieSpark3_3AvroDeserializer.scala}
(95%)
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/avro/HoodieSpark3_2AvroSerializer.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/avro/HoodieSpark3_3AvroSerializer.scala}
(94%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/catalyst/plans/logical/TimeTravelRelation.scala
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/connector/catalog/HoodieIdentifier.scala
(100%)
create mode 100644
hudi-spark-datasource/hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/execution/datasources/Spark33NestedSchemaPruning.scala
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/Spark32DataSourceUtils.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/Spark33DataSourceUtils.scala}
(99%)
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/Spark32HoodieParquetFileFormat.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/execution/datasources/parquet/Spark33HoodieParquetFileFormat.scala}
(97%)
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/hudi/ResolveHudiAlterTableCommandSpark32.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/hudi/Spark33ResolveHudiAlterTableCommand.scala}
(95%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/hudi/analysis/HoodieSpark3Analysis.scala
(94%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/BasicStagedTable.scala
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/HoodieCatalog.scala
(93%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/HoodieInternalV2Table.scala
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/HoodieStagedTable.scala
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/hudi/catalog/TableCreationMode.java
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/main/scala/org/apache/spark/sql/hudi/command/AlterTableCommand.scala
(100%)
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/parser/HoodieSpark3_2ExtendedSqlAstBuilder.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/parser/HoodieSpark3_3ExtendedSqlAstBuilder.scala}
(99%)
rename
hudi-spark-datasource/{hudi-spark3/src/main/scala/org/apache/spark/sql/parser/HoodieSpark3_2ExtendedSqlParser.scala
=>
hudi-spark3.3.x/src/main/scala/org/apache/spark/sql/parser/HoodieSpark3_3ExtendedSqlParser.scala}
(84%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/test/java/org/apache/hudi/spark3/internal/TestHoodieBulkInsertDataInternalWriter.java
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/test/java/org/apache/hudi/spark3/internal/TestHoodieDataSourceInternalBatchWrite.java
(100%)
rename hudi-spark-datasource/{hudi-spark3 =>
hudi-spark3.3.x}/src/test/java/org/apache/hudi/spark3/internal/TestReflectUtil.java
(100%)
copy {hudi-common =>
hudi-spark-datasource/hudi-spark3.3.x}/src/test/resources/log4j-surefire-quiet.properties
(100%)
copy {hudi-client/hudi-client-common =>
hudi-spark-datasource/hudi-spark3.3.x}/src/test/resources/log4j-surefire.properties
(100%)
delete mode 100644
hudi-sync/hudi-adb-sync/src/main/java/org/apache/hudi/sync/adb/AbstractAdbSyncHoodieClient.java
delete mode 100644
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/AbstractHiveSyncHoodieClient.java
create mode 100644
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/HiveSyncConfigHolder.java
rename
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/{HoodieHiveClient.java
=> HoodieHiveSyncClient.java} (64%)
rename
hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/replication/{HiveSyncGlobalCommitConfig.java
=> HiveSyncGlobalCommitParams.java} (65%)
rename hudi-sync/hudi-hive-sync/src/main/java/org/apache/hudi/hive/{ =>
transaction/lock}/HiveMetastoreBasedLockProvider.java (95%)
delete mode 100644
hudi-sync/hudi-hive-sync/src/test/java/org/apache/hudi/hive/TestHiveSyncGlobalCommitTool.java
create mode 100644
hudi-sync/hudi-hive-sync/src/test/java/org/apache/hudi/hive/replication/TestHiveSyncGlobalCommitTool.java
rename
hudi-sync/hudi-hive-sync/src/test/java/org/apache/hudi/hive/testutils/{TestCluster.java
=> HiveTestCluster.java} (86%)
delete mode 100644
hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/AbstractSyncHoodieClient.java
create mode 100644
hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/HoodieMetaSyncOperations.java
create mode 100644
hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/HoodieSyncClient.java
create mode 100644
hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/HoodieSyncTool.java
create mode 100644
hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/model/FieldSchema.java
create mode 100644
hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/model/PartitionEvent.java
rename hudi-sync/{hudi-hive-sync/src/main/java/org/apache/hudi/hive =>
hudi-sync-common/src/main/java/org/apache/hudi/sync/common/model}/PartitionValueExtractor.java
(69%)
rename
hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/{AbstractSyncTool.java
=> util/SparkDataSourceTableUtils.java} (69%)
create mode 100644
hudi-sync/hudi-sync-common/src/test/java/org/apache/hudi/sync/common/TestHoodieSyncConfig.java
create mode 100644
hudi-sync/hudi-sync-common/src/test/java/org/apache/hudi/sync/common/util/TestConfigUtils.java
create mode 100644
hudi-utilities/src/main/java/org/apache/hudi/utilities/HoodieDropPartitionsTool.java
create mode 100644 rfc/rfc-51/arch.jpg
create mode 100644 rfc/rfc-51/points.jpg
create mode 100644 rfc/rfc-51/query_cdc_on_mor.jpg
create mode 100644 rfc/rfc-51/read_cdc_log_file.jpg
create mode 100644 rfc/rfc-51/rfc-51.md
create mode 100644 rfc/rfc-51/scenario-definition.jpg
create mode 100644 rfc/rfc-55/hudi-sync-class-diagram.png
create mode 100644 rfc/rfc-55/hudi-sync-flows.png
create mode 100644 rfc/rfc-55/rfc-55.md