├── .asf.yaml ├── .codecov.yml ├── .github ├── ISSUE_TEMPLATE │ ├── config.yml │ ├── hudi_bug.yml │ ├── hudi_community_support.yml │ ├── hudi_feature.yml │ └── hudi_improvement.yml ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── README.md │ ├── azure_ci.js │ ├── azure_ci_check.yml │ ├── bot.yml │ ├── labeler.js │ ├── maven_artifact_validation.yml │ ├── pr_compliance.yml │ ├── pr_title_validation.yml │ ├── release_candidate_validation.yml │ ├── scheduled_workflow.yml │ └── update_pr_compliance.yml ├── .gitignore ├── .idea ├── icon.png └── vcs.xml ├── Dockerfile ├── LICENSE ├── NOTICE ├── README.md ├── azure-pipelines-20230430.yml ├── conf └── hudi-defaults.conf.template ├── dependencies ├── hudi-flink-bundle_2.11.txt ├── hudi-flink-bundle_2.12.txt ├── hudi-hadoop-mr-bundle.txt ├── hudi-hive-sync-bundle.txt ├── hudi-integ-test-bundle.txt ├── hudi-kafka-connect-bundle.txt ├── hudi-presto-bundle.txt ├── hudi-spark-bundle_2.11.txt ├── hudi-spark-bundle_2.12.txt ├── hudi-spark3-bundle_2.12.txt ├── hudi-timeline-server-bundle.txt ├── hudi-utilities-bundle_2.11.txt └── hudi-utilities-bundle_2.12.txt ├── doap_HUDI.rdf ├── docker ├── README.md ├── build_docker_images.sh ├── build_local_docker_images.sh ├── compose │ ├── docker-compose_hadoop284_hive233_spark353_amd64.yml │ ├── docker-compose_hadoop284_hive233_spark353_arm64.yml │ ├── docker-compose_hadoop334_hive313_spark353_amd64.yml │ ├── docker-compose_hadoop334_hive313_spark353_arm64.yml │ └── hadoop.env ├── demo │ ├── compaction-bootstrap.commands │ ├── compaction.commands │ ├── config │ │ ├── base.properties │ │ ├── dfs-source.properties │ │ ├── hoodie-incr.properties │ │ ├── hoodie-schema.avsc │ │ ├── kafka-source.properties │ │ ├── log4j2.properties │ │ ├── schema.avsc │ │ ├── spark-defaults.conf │ │ └── test-suite │ │ │ ├── base.properties │ │ │ ├── compact-test.properties │ │ │ ├── complex-dag-mor.yaml │ │ │ ├── complex-source.avsc │ │ │ ├── deltastreamer-hive-sync-presto.yaml │ │ │ ├── deltastreamer-immutable-dataset.yaml │ │ │ ├── deltastreamer-long-running-multi-partitions-hive.yaml │ │ │ ├── deltastreamer-long-running-multi-partitions-metadata.yaml │ │ │ ├── deltastreamer-long-running-multi-partitions.yaml │ │ │ ├── deltastreamer-medium-clustering.yaml │ │ │ ├── deltastreamer-medium-full-dataset-validation.yaml │ │ │ ├── deltastreamer-non-partitioned.yaml │ │ │ ├── deltastreamer-pure-bulk-inserts.yaml │ │ │ ├── deltastreamer-pure-inserts.yaml │ │ │ ├── detlastreamer-long-running-example.yaml │ │ │ ├── insert-overwrite-table.yaml │ │ │ ├── insert-overwrite.yaml │ │ │ ├── large-scale │ │ │ ├── cow-large-scale-long-running.yaml │ │ │ ├── cow-large-scale-sanity.yaml │ │ │ ├── mor-large-scale-long-running.yaml │ │ │ └── mor-large-scale-sanity.yaml │ │ │ ├── mor-async-compact.yaml │ │ │ ├── multi-writer-1-ds.yaml │ │ │ ├── multi-writer-1-sds.yaml │ │ │ ├── multi-writer-1.properties │ │ │ ├── multi-writer-2-sds.yaml │ │ │ ├── multi-writer-2.properties │ │ │ ├── multi-writer-3-sds.yaml │ │ │ ├── multi-writer-4-sds.yaml │ │ │ ├── multi-writer-local-1.properties │ │ │ ├── multi-writer-local-2.properties │ │ │ ├── multi-writer-local-3.properties │ │ │ ├── multi-writer-local-4.properties │ │ │ ├── simple-clustering-hive.yaml │ │ │ ├── simple-clustering.yaml │ │ │ ├── simple-deltastreamer-hive.yaml │ │ │ ├── simple-deltastreamer.yaml │ │ │ ├── source.avsc │ │ │ ├── spark-clustering.yaml │ │ │ ├── spark-delete-partition.yaml │ │ │ ├── spark-immutable-dataset.yaml │ │ │ ├── spark-immutable-to-mutable.yaml │ │ │ ├── spark-long-running-non-partitioned.yaml │ │ │ ├── spark-long-running.yaml │ │ │ ├── spark-medium-clustering.yaml │ │ │ ├── spark-non-core-operations.yaml │ │ │ ├── spark-pure-bulk-inserts.yaml │ │ │ ├── spark-pure-inserts.yaml │ │ │ ├── spark-simple.yaml │ │ │ ├── spark-sql-nonpartitioned-external-cow-ctas.yaml │ │ │ ├── spark-sql-nonpartitioned-external-mor.yaml │ │ │ ├── spark-sql-nonpartitioned-managed-cow-ctas.yaml │ │ │ ├── spark-sql-nonpartitioned-managed-cow.yaml │ │ │ ├── spark-sql-partition-cow-updates.yaml │ │ │ ├── spark-sql-partitioned-managed-cow-ctas.yaml │ │ │ ├── spark-sql-partitioned-managed-cow.yaml │ │ │ ├── target.avsc │ │ │ ├── templates │ │ │ ├── clustering.yaml.template │ │ │ ├── long_test_suite.yaml.template │ │ │ ├── medium_test_suite.yaml.template │ │ │ ├── sanity.yaml.template │ │ │ ├── spark_command.txt.template │ │ │ └── test.properties.template │ │ │ ├── test-aggressive-clean-archival-inline-compact.properties │ │ │ ├── test-aggressive-clean-archival.properties │ │ │ ├── test-clustering-aggressive-clean-archival-inline-compact.properties │ │ │ ├── test-clustering-aggressive-clean-archival.properties │ │ │ ├── test-clustering-inline-compact.properties │ │ │ ├── test-clustering-metadata-aggressive-clean-archival-inline-compact.properties │ │ │ ├── test-clustering-metadata-aggressive-clean-archival.properties │ │ │ ├── test-clustering.properties │ │ │ ├── test-inline-compact.properties │ │ │ ├── test-metadata-aggressive-clean-archival-inline-compact.properties │ │ │ ├── test-metadata-aggressive-clean-archival.properties │ │ │ ├── test-metadata-inline-compact.properties │ │ │ ├── test-metadata.properties │ │ │ ├── test-nonpartitioned-inline-compact.properties │ │ │ ├── test-nonpartitioned-metadata-inline-compact.properties │ │ │ ├── test-nonpartitioned-metadata.properties │ │ │ ├── test-nonpartitioned.properties │ │ │ └── test.properties │ ├── data │ │ ├── batch_1.json │ │ └── batch_2.json │ ├── get_min_commit_time_cow.sh │ ├── get_min_commit_time_mor.sh │ ├── hive-batch1.commands │ ├── hive-batch2-after-compaction.commands │ ├── hive-incremental-cow.commands │ ├── hive-incremental-mor-ro.commands │ ├── hive-incremental-mor-rt.commands │ ├── hive-table-check.commands │ ├── presto-batch1.commands │ ├── presto-batch2-after-compaction.commands │ ├── presto-table-check.commands │ ├── setup_demo_container.sh │ ├── sparksql-batch1.commands │ ├── sparksql-batch2.commands │ ├── sparksql-bootstrap-prep-source.commands │ ├── sparksql-incremental.commands │ ├── sync-validate.commands │ ├── trino-batch1.commands │ ├── trino-batch2-after-compaction.commands │ └── trino-table-check.commands ├── generate_test_suite.sh ├── hoodie │ └── hadoop │ │ ├── base │ │ ├── Dockerfile │ │ ├── entrypoint.sh │ │ ├── export_container_ip.sh │ │ └── pom.xml │ │ ├── base_java11 │ │ ├── Dockerfile │ │ ├── entrypoint.sh │ │ ├── export_container_ip.sh │ │ └── pom.xml │ │ ├── datanode │ │ ├── Dockerfile │ │ ├── pom.xml │ │ └── run_dn.sh │ │ ├── historyserver │ │ ├── Dockerfile │ │ ├── pom.xml │ │ └── run_history.sh │ │ ├── hive_base │ │ ├── Dockerfile │ │ ├── conf │ │ │ ├── beeline-log4j2.properties │ │ │ ├── hive-env.sh │ │ │ ├── hive-exec-log4j2.properties │ │ │ ├── hive-log4j2.properties │ │ │ ├── hive-site.xml │ │ │ ├── ivysettings.xml │ │ │ └── llap-daemon-log4j2.properties │ │ ├── entrypoint.sh │ │ ├── pom.xml │ │ └── startup.sh │ │ ├── namenode │ │ ├── Dockerfile │ │ ├── pom.xml │ │ └── run_nn.sh │ │ ├── pom.xml │ │ ├── prestobase │ │ ├── Dockerfile │ │ ├── bin │ │ │ ├── entrypoint.sh │ │ │ └── mustache.sh │ │ ├── etc │ │ │ ├── catalog │ │ │ │ ├── hive.properties │ │ │ │ ├── jmx.properties │ │ │ │ └── localfile.properties │ │ │ ├── coordinator.properties.mustache │ │ │ ├── jvm.config.mustache │ │ │ ├── log.properties │ │ │ ├── node.properties.mustache │ │ │ └── worker.properties.mustache │ │ ├── lib │ │ │ └── mustache.sh │ │ └── pom.xml │ │ ├── spark_base │ │ ├── Dockerfile │ │ ├── execute-step.sh │ │ ├── finish-step.sh │ │ ├── pom.xml │ │ └── wait-for-step.sh │ │ ├── sparkadhoc │ │ ├── Dockerfile │ │ ├── adhoc.sh │ │ └── pom.xml │ │ ├── sparkmaster │ │ ├── Dockerfile │ │ ├── master.sh │ │ └── pom.xml │ │ ├── sparkworker │ │ ├── Dockerfile │ │ ├── pom.xml │ │ └── worker.sh │ │ ├── trinobase │ │ ├── Dockerfile │ │ ├── pom.xml │ │ └── scripts │ │ │ └── trino.sh │ │ ├── trinocoordinator │ │ ├── Dockerfile │ │ ├── etc │ │ │ ├── catalog │ │ │ │ └── hive.properties │ │ │ ├── config.properties │ │ │ ├── jvm.config │ │ │ ├── log.properties │ │ │ └── node.properties │ │ └── pom.xml │ │ └── trinoworker │ │ ├── Dockerfile │ │ ├── etc │ │ ├── catalog │ │ │ └── hive.properties │ │ ├── config.properties │ │ ├── jvm.config │ │ ├── log.properties │ │ └── node.properties │ │ └── pom.xml ├── images │ └── push_to_docker_hub.png ├── setup_demo.sh └── stop_demo.sh ├── hudi-aws ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ ├── aws │ │ ├── credentials │ │ │ ├── HoodieAWSCredentialsProviderFactory.java │ │ │ ├── HoodieConfigAWSAssumedRoleCredentialsProvider.java │ │ │ └── HoodieConfigAWSCredentialsProvider.java │ │ ├── metrics │ │ │ └── cloudwatch │ │ │ │ ├── CloudWatchMetricsReporter.java │ │ │ │ └── CloudWatchReporter.java │ │ ├── sync │ │ │ ├── AWSGlueCatalogSyncClient.java │ │ │ ├── AwsGlueCatalogSyncTool.java │ │ │ ├── HoodieGlueSyncException.java │ │ │ └── util │ │ │ │ ├── GlueFilterGenVisitor.java │ │ │ │ └── GluePartitionFilterGenerator.java │ │ ├── transaction │ │ │ └── lock │ │ │ │ ├── DynamoDBBasedImplicitPartitionKeyLockProvider.java │ │ │ │ ├── DynamoDBBasedLockProvider.java │ │ │ │ ├── DynamoDBBasedLockProviderBase.java │ │ │ │ └── S3StorageLockClient.java │ │ └── utils │ │ │ └── DynamoTableUtils.java │ │ └── config │ │ ├── DynamoDbBasedLockConfig.java │ │ ├── GlueCatalogSyncClientConfig.java │ │ └── HoodieAWSConfig.java │ └── test │ └── java │ └── org │ └── apache │ └── hudi │ └── aws │ ├── TestHoodieAWSCredentialsProviderFactory.java │ ├── metrics │ └── cloudwatch │ │ ├── TestCloudWatchMetricsReporter.java │ │ └── TestCloudWatchReporter.java │ ├── sync │ ├── ITTestGluePartitionPushdown.java │ ├── MockAwsGlueCatalogSyncTool.java │ ├── TestAWSGlueSyncClient.java │ ├── TestAwsGlueSyncTool.java │ └── TestGluePartitionPushdown.java │ ├── testutils │ └── GlueTestUtil.java │ └── transaction │ ├── integ │ └── ITTestDynamoDBBasedLockProvider.java │ └── lock │ ├── DynamoDBBasedLockProviderBaseTest.java │ ├── TestS3StorageBasedLockProvider.java │ ├── TestS3StorageLockClient.java │ └── TestS3StorageLockClientAuditOperations.java ├── hudi-cli ├── pom.xml └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── cli │ │ │ ├── HoodieCLI.java │ │ │ ├── HoodieCliSparkConfig.java │ │ │ ├── HoodiePrintHelper.java │ │ │ ├── HoodiePrompt.java │ │ │ ├── HoodieTableHeaderFields.java │ │ │ ├── Main.java │ │ │ ├── Table.java │ │ │ ├── TableHeader.java │ │ │ ├── commands │ │ │ ├── ArchivedCommitsCommand.java │ │ │ ├── BootstrapCommand.java │ │ │ ├── CleansCommand.java │ │ │ ├── ClusteringCommand.java │ │ │ ├── CommitsCommand.java │ │ │ ├── CompactionCommand.java │ │ │ ├── DiffCommand.java │ │ │ ├── ExportCommand.java │ │ │ ├── FileSystemViewCommand.java │ │ │ ├── HoodieLogFileCommand.java │ │ │ ├── HoodieSyncValidateCommand.java │ │ │ ├── KerberosAuthenticationCommand.java │ │ │ ├── LockAuditingCommand.java │ │ │ ├── MarkersCommand.java │ │ │ ├── MetadataCommand.java │ │ │ ├── RepairsCommand.java │ │ │ ├── RestoresCommand.java │ │ │ ├── RollbacksCommand.java │ │ │ ├── SavepointsCommand.java │ │ │ ├── SparkEnvCommand.java │ │ │ ├── SparkMain.java │ │ │ ├── StatsCommand.java │ │ │ ├── TableCommand.java │ │ │ ├── TempViewCommand.java │ │ │ ├── TimelineCommand.java │ │ │ ├── UpgradeOrDowngradeCommand.java │ │ │ └── UtilsCommand.java │ │ │ └── utils │ │ │ ├── CLIUtils.java │ │ │ ├── CommitUtil.java │ │ │ ├── HiveUtil.java │ │ │ ├── InputStreamConsumer.java │ │ │ ├── SparkTempViewProvider.java │ │ │ ├── SparkUtil.java │ │ │ └── TempViewProvider.java │ └── resources │ │ ├── application.yml │ │ ├── banner.txt │ │ └── version.txt │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── hudi │ │ └── cli │ │ ├── TestSparkUtil.java │ │ ├── commands │ │ ├── TestArchiveCommand.java │ │ ├── TestArchivedCommitsCommand.java │ │ ├── TestCleansCommand.java │ │ ├── TestCommitsCommand.java │ │ ├── TestCompactionCommand.java │ │ ├── TestDiffCommand.java │ │ ├── TestFileSystemViewCommand.java │ │ ├── TestHoodieLogFileCommand.java │ │ ├── TestLockAuditingCommand.java │ │ ├── TestMetadataCommand.java │ │ ├── TestRepairsCommand.java │ │ ├── TestRestoresCommand.java │ │ ├── TestRollbacksCommand.java │ │ ├── TestSavepointsCommand.java │ │ ├── TestSparkEnvCommand.java │ │ ├── TestStatsCommand.java │ │ ├── TestTableCommand.java │ │ ├── TestTempViewCommand.java │ │ ├── TestUpgradeDowngradeCommand.java │ │ └── TestUtilsCommand.java │ │ ├── functional │ │ └── CLIFunctionalTestHarness.java │ │ ├── integ │ │ ├── ITTestBootstrapCommand.java │ │ ├── ITTestClusteringCommand.java │ │ ├── ITTestCommitsCommand.java │ │ ├── ITTestCompactionCommand.java │ │ ├── ITTestMarkersCommand.java │ │ ├── ITTestRepairsCommand.java │ │ ├── ITTestSavepointsCommand.java │ │ └── ITTestTableCommand.java │ │ └── testutils │ │ ├── HoodieCLIIntegrationTestBase.java │ │ ├── HoodieCLIIntegrationTestHarness.java │ │ ├── HoodieTestCommitMetadataGenerator.java │ │ ├── HoodieTestCommitUtilities.java │ │ ├── HoodieTestReplaceCommitMetadataGenerator.java │ │ ├── MockCommandLineInput.java │ │ └── ShellEvaluationResultUtil.java │ └── resources │ ├── clean.properties │ └── table-config.properties ├── hudi-client ├── hudi-client-common │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── async │ │ │ ├── AsyncArchiveService.java │ │ │ ├── AsyncCleanerService.java │ │ │ ├── AsyncClusteringService.java │ │ │ ├── AsyncCompactService.java │ │ │ ├── HoodieAsyncService.java │ │ │ └── HoodieAsyncTableService.java │ │ │ ├── callback │ │ │ ├── HoodieClientInitCallback.java │ │ │ ├── HoodieWriteCommitCallback.java │ │ │ ├── client │ │ │ │ └── http │ │ │ │ │ └── HoodieWriteCommitHttpCallbackClient.java │ │ │ ├── common │ │ │ │ ├── HoodieWriteCommitCallbackMessage.java │ │ │ │ └── WriteStatusValidator.java │ │ │ ├── impl │ │ │ │ └── HoodieWriteCommitHttpCallback.java │ │ │ └── util │ │ │ │ ├── HoodieCommitCallbackFactory.java │ │ │ │ └── HoodieWriteCommitCallbackUtil.java │ │ │ ├── client │ │ │ ├── BaseClusterer.java │ │ │ ├── BaseCompactor.java │ │ │ ├── BaseHoodieClient.java │ │ │ ├── BaseHoodieTableServiceClient.java │ │ │ ├── BaseHoodieWriteClient.java │ │ │ ├── CommitMetadataResolver.java │ │ │ ├── CommitMetadataResolverFactory.java │ │ │ ├── CompactionAdminClient.java │ │ │ ├── FailOnFirstErrorWriteStatus.java │ │ │ ├── HoodieColumnStatsIndexUtils.java │ │ │ ├── HoodieTableServiceManagerClient.java │ │ │ ├── IndexStats.java │ │ │ ├── MarkerBasedCommitMetadataResolver.java │ │ │ ├── NoOpCommitMetadataResolver.java │ │ │ ├── RunsTableService.java │ │ │ ├── SecondaryIndexStats.java │ │ │ ├── TableWriteStats.java │ │ │ ├── WriteStatus.java │ │ │ ├── bootstrap │ │ │ │ ├── BootstrapMode.java │ │ │ │ ├── BootstrapWriteStatus.java │ │ │ │ ├── FullRecordBootstrapDataProvider.java │ │ │ │ ├── HoodieBootstrapSchemaProvider.java │ │ │ │ ├── selector │ │ │ │ │ ├── BootstrapModeSelector.java │ │ │ │ │ ├── BootstrapRegexModeSelector.java │ │ │ │ │ ├── FullRecordBootstrapModeSelector.java │ │ │ │ │ ├── MetadataOnlyBootstrapModeSelector.java │ │ │ │ │ └── UniformBootstrapModeSelector.java │ │ │ │ └── translator │ │ │ │ │ ├── BootstrapPartitionPathTranslator.java │ │ │ │ │ ├── DecodedBootstrapPartitionPathTranslator.java │ │ │ │ │ └── IdentityBootstrapPartitionPathTranslator.java │ │ │ ├── embedded │ │ │ │ ├── EmbeddedTimelineServerHelper.java │ │ │ │ └── EmbeddedTimelineService.java │ │ │ ├── heartbeat │ │ │ │ ├── HeartbeatUtils.java │ │ │ │ └── HoodieHeartbeatClient.java │ │ │ ├── timeline │ │ │ │ ├── ActiveActionWithDetails.java │ │ │ │ ├── HoodieTimelineArchiver.java │ │ │ │ ├── TimelineArchivers.java │ │ │ │ └── versioning │ │ │ │ │ ├── v1 │ │ │ │ │ └── TimelineArchiverV1.java │ │ │ │ │ └── v2 │ │ │ │ │ ├── LSMTimelineWriter.java │ │ │ │ │ └── TimelineArchiverV2.java │ │ │ ├── transaction │ │ │ │ ├── BucketIndexConcurrentFileWritesConflictResolutionStrategy.java │ │ │ │ ├── ConcurrentOperation.java │ │ │ │ ├── ConcurrentSchemaEvolutionTableSchemaGetter.java │ │ │ │ ├── ConflictResolutionStrategy.java │ │ │ │ ├── DirectMarkerTransactionManager.java │ │ │ │ ├── PreferWriterConflictResolutionStrategy.java │ │ │ │ ├── SchemaConflictResolutionStrategy.java │ │ │ │ ├── SimpleConcurrentFileWritesConflictResolutionStrategy.java │ │ │ │ ├── SimpleSchemaConflictResolutionStrategy.java │ │ │ │ ├── TransactionManager.java │ │ │ │ └── lock │ │ │ │ │ ├── BaseZookeeperBasedLockProvider.java │ │ │ │ │ ├── FileSystemBasedLockProvider.java │ │ │ │ │ ├── LockInfo.java │ │ │ │ │ ├── LockManager.java │ │ │ │ │ ├── StorageBasedLockProvider.java │ │ │ │ │ ├── StorageLockClient.java │ │ │ │ │ ├── ZookeeperBasedImplicitBasePathLockProvider.java │ │ │ │ │ ├── ZookeeperBasedLockProvider.java │ │ │ │ │ ├── audit │ │ │ │ │ ├── AuditOperationState.java │ │ │ │ │ ├── AuditService.java │ │ │ │ │ ├── AuditServiceFactory.java │ │ │ │ │ └── StorageLockProviderAuditService.java │ │ │ │ │ ├── metrics │ │ │ │ │ └── HoodieLockMetrics.java │ │ │ │ │ └── models │ │ │ │ │ ├── HeartbeatManager.java │ │ │ │ │ ├── LockGetResult.java │ │ │ │ │ ├── LockProviderHeartbeatManager.java │ │ │ │ │ ├── LockUpsertResult.java │ │ │ │ │ ├── StorageLockData.java │ │ │ │ │ └── StorageLockFile.java │ │ │ └── utils │ │ │ │ ├── ArchivalUtils.java │ │ │ │ ├── ClosableMergingIterator.java │ │ │ │ ├── CloseableConcatenatingIterator.java │ │ │ │ ├── ConcatenatingIterator.java │ │ │ │ ├── DeletePartitionUtils.java │ │ │ │ ├── FileSliceMetricUtils.java │ │ │ │ ├── LazyConcatenatingIterator.java │ │ │ │ ├── LazyIterableIterator.java │ │ │ │ ├── LegacyArchivedMetaEntryReader.java │ │ │ │ ├── MergingIterator.java │ │ │ │ ├── OperationConverter.java │ │ │ │ └── TransactionUtils.java │ │ │ ├── config │ │ │ ├── HoodieArchivalConfig.java │ │ │ ├── HoodieBootstrapConfig.java │ │ │ ├── HoodieCleanConfig.java │ │ │ ├── HoodieClusteringConfig.java │ │ │ ├── HoodieCompactionConfig.java │ │ │ ├── HoodieErrorTableConfig.java │ │ │ ├── HoodieIndexConfig.java │ │ │ ├── HoodieInternalConfig.java │ │ │ ├── HoodieLayoutConfig.java │ │ │ ├── HoodieLockConfig.java │ │ │ ├── HoodiePayloadConfig.java │ │ │ ├── HoodiePreCommitValidatorConfig.java │ │ │ ├── HoodieTTLConfig.java │ │ │ ├── HoodieWriteCommitCallbackConfig.java │ │ │ ├── HoodieWriteConfig.java │ │ │ └── StorageBasedLockConfig.java │ │ │ ├── estimator │ │ │ ├── AverageRecordSizeEstimator.java │ │ │ ├── RecordSizeEstimator.java │ │ │ └── RecordSizeEstimatorFactory.java │ │ │ ├── exception │ │ │ ├── HoodieAppendException.java │ │ │ ├── HoodieClusteringUpdateException.java │ │ │ ├── HoodieCommitCallbackException.java │ │ │ ├── HoodieCommitException.java │ │ │ ├── HoodieCompactionException.java │ │ │ ├── HoodieDeletePartitionException.java │ │ │ ├── HoodieDeletePartitionPendingTableServiceException.java │ │ │ ├── HoodieDependentSystemUnavailableException.java │ │ │ ├── HoodieInsertException.java │ │ │ ├── HoodieKeyGeneratorException.java │ │ │ ├── HoodieRestoreException.java │ │ │ ├── HoodieRollbackException.java │ │ │ ├── HoodieSavepointException.java │ │ │ ├── HoodieUpgradeDowngradeException.java │ │ │ └── HoodieUpsertException.java │ │ │ ├── execution │ │ │ ├── CopyOnWriteInsertHandler.java │ │ │ ├── HoodieLazyInsertIterable.java │ │ │ └── bulkinsert │ │ │ │ └── BulkInsertSortMode.java │ │ │ ├── index │ │ │ ├── HoodieIndex.java │ │ │ ├── HoodieIndexUtils.java │ │ │ ├── HoodieInternalProxyIndex.java │ │ │ ├── bloom │ │ │ │ ├── BaseHoodieBloomIndexHelper.java │ │ │ │ ├── BloomIndexFileInfo.java │ │ │ │ ├── HoodieBloomIndex.java │ │ │ │ ├── HoodieBloomIndexCheckFunction.java │ │ │ │ ├── HoodieGlobalBloomIndex.java │ │ │ │ ├── IndexFileFilter.java │ │ │ │ ├── IntervalTreeBasedGlobalIndexFileFilter.java │ │ │ │ ├── IntervalTreeBasedIndexFileFilter.java │ │ │ │ ├── KeyRangeLookupTree.java │ │ │ │ ├── KeyRangeNode.java │ │ │ │ ├── ListBasedGlobalIndexFileFilter.java │ │ │ │ ├── ListBasedHoodieBloomIndexHelper.java │ │ │ │ └── ListBasedIndexFileFilter.java │ │ │ ├── bucket │ │ │ │ ├── BucketIdentifier.java │ │ │ │ ├── ConsistentBucketIdentifier.java │ │ │ │ ├── ConsistentBucketIndexUtils.java │ │ │ │ ├── HoodieBucketIndex.java │ │ │ │ ├── HoodieConsistentBucketIndex.java │ │ │ │ ├── HoodieSimpleBucketIndex.java │ │ │ │ └── partition │ │ │ │ │ ├── NumBucketsFunction.java │ │ │ │ │ ├── PartitionBucketIndexCalculator.java │ │ │ │ │ ├── PartitionBucketIndexRule.java │ │ │ │ │ ├── PartitionBucketIndexUtils.java │ │ │ │ │ ├── RegexRuleEngine.java │ │ │ │ │ └── RuleEngine.java │ │ │ ├── inmemory │ │ │ │ └── HoodieInMemoryHashIndex.java │ │ │ └── simple │ │ │ │ ├── HoodieGlobalSimpleIndex.java │ │ │ │ └── HoodieSimpleIndex.java │ │ │ ├── io │ │ │ ├── AppendHandleFactory.java │ │ │ ├── BaseCreateHandle.java │ │ │ ├── BinaryCopyHandleFactory.java │ │ │ ├── CreateHandleFactory.java │ │ │ ├── FileGroupReaderBasedAppendHandle.java │ │ │ ├── FileGroupReaderBasedMergeHandle.java │ │ │ ├── HoodieAbstractMergeHandle.java │ │ │ ├── HoodieAppendHandle.java │ │ │ ├── HoodieBinaryCopyHandle.java │ │ │ ├── HoodieBootstrapHandle.java │ │ │ ├── HoodieCDCLogger.java │ │ │ ├── HoodieConcatHandle.java │ │ │ ├── HoodieCreateHandle.java │ │ │ ├── HoodieIOHandle.java │ │ │ ├── HoodieKeyLocationFetchHandle.java │ │ │ ├── HoodieKeyLookupHandle.java │ │ │ ├── HoodieKeyLookupResult.java │ │ │ ├── HoodieMergeHandle.java │ │ │ ├── HoodieMergeHandleFactory.java │ │ │ ├── HoodieMergeHandleWithChangeLog.java │ │ │ ├── HoodieRangeInfoHandle.java │ │ │ ├── HoodieReadHandle.java │ │ │ ├── HoodieSortedMergeHandle.java │ │ │ ├── HoodieSortedMergeHandleWithChangeLog.java │ │ │ ├── HoodieUnboundedCreateHandle.java │ │ │ ├── HoodieWriteHandle.java │ │ │ ├── HoodieWriteMergeHandle.java │ │ │ ├── IOUtils.java │ │ │ ├── SecondaryIndexStreamingTracker.java │ │ │ ├── SingleFileHandleCreateFactory.java │ │ │ └── WriteHandleFactory.java │ │ │ ├── keygen │ │ │ ├── AutoRecordGenWrapperAvroKeyGenerator.java │ │ │ ├── AutoRecordKeyGeneratorWrapper.java │ │ │ ├── ComplexAvroKeyGenerator.java │ │ │ ├── CustomAvroKeyGenerator.java │ │ │ ├── GlobalAvroDeleteKeyGenerator.java │ │ │ ├── KeyGenUtils.java │ │ │ ├── NonpartitionedAvroKeyGenerator.java │ │ │ ├── SimpleAvroKeyGenerator.java │ │ │ ├── TimestampBasedAvroKeyGenerator.java │ │ │ ├── factory │ │ │ │ └── HoodieAvroKeyGeneratorFactory.java │ │ │ └── parser │ │ │ │ ├── BaseHoodieDateTimeParser.java │ │ │ │ └── HoodieDateTimeParser.java │ │ │ ├── metadata │ │ │ ├── BucketizedMetadataTableFileGroupIndexParser.java │ │ │ ├── DefaultMetadataTableFileGroupIndexParser.java │ │ │ ├── HoodieBackedTableMetadataWriter.java │ │ │ ├── HoodieBackedTableMetadataWriterTableVersionSix.java │ │ │ ├── HoodieMetadataWriteUtils.java │ │ │ ├── HoodieTableMetadataKeyGenerator.java │ │ │ ├── HoodieTableMetadataWriter.java │ │ │ ├── MetadataIndexMapper.java │ │ │ ├── MetadataTableFileGroupIndexParser.java │ │ │ ├── RecordIndexMapper.java │ │ │ ├── SecondaryIndexMapper.java │ │ │ └── SecondaryIndexRecordGenerationUtils.java │ │ │ ├── metrics │ │ │ └── HoodieMetrics.java │ │ │ ├── optimize │ │ │ └── HilbertCurveUtils.java │ │ │ ├── table │ │ │ ├── BucketIndexBulkInsertPartitioner.java │ │ │ ├── BucketSortBulkInsertPartitioner.java │ │ │ ├── BulkInsertPartitioner.java │ │ │ ├── FileIdPrefixProvider.java │ │ │ ├── HoodieCompactionHandler.java │ │ │ ├── HoodieTable.java │ │ │ ├── RandomFileIdPrefixProvider.java │ │ │ ├── WorkloadProfile.java │ │ │ ├── WorkloadStat.java │ │ │ ├── action │ │ │ │ ├── BaseActionExecutor.java │ │ │ │ ├── BaseTableServicePlanActionExecutor.java │ │ │ │ ├── HoodieWriteMetadata.java │ │ │ │ ├── IncrementalPartitionAwareStrategy.java │ │ │ │ ├── bootstrap │ │ │ │ │ ├── BootstrapRecordConsumer.java │ │ │ │ │ ├── BootstrapUtils.java │ │ │ │ │ └── HoodieBootstrapWriteMetadata.java │ │ │ │ ├── clean │ │ │ │ │ ├── CleanActionExecutor.java │ │ │ │ │ ├── CleanPlanActionExecutor.java │ │ │ │ │ ├── CleanPlanner.java │ │ │ │ │ ├── CleaningTriggerStrategy.java │ │ │ │ │ └── PartitionCleanStat.java │ │ │ │ ├── cluster │ │ │ │ │ ├── ClusteringPlanActionExecutor.java │ │ │ │ │ ├── ClusteringPlanPartitionFilter.java │ │ │ │ │ ├── ClusteringPlanPartitionFilterMode.java │ │ │ │ │ ├── strategy │ │ │ │ │ │ ├── BaseConsistentHashingBucketClusteringPlanStrategy.java │ │ │ │ │ │ ├── ClusteringExecutionStrategy.java │ │ │ │ │ │ ├── ClusteringPlanStrategy.java │ │ │ │ │ │ ├── PartitionAwareClusteringPlanStrategy.java │ │ │ │ │ │ └── UpdateStrategy.java │ │ │ │ │ └── util │ │ │ │ │ │ └── ConsistentHashingUpdateStrategyUtils.java │ │ │ │ ├── commit │ │ │ │ │ ├── BaseBulkInsertHelper.java │ │ │ │ │ ├── BaseCommitActionExecutor.java │ │ │ │ │ ├── BaseDeleteHelper.java │ │ │ │ │ ├── BaseMergeHelper.java │ │ │ │ │ ├── BaseWriteHelper.java │ │ │ │ │ ├── BucketInfo.java │ │ │ │ │ ├── BucketType.java │ │ │ │ │ ├── HoodieDeleteHelper.java │ │ │ │ │ ├── HoodieMergeHelper.java │ │ │ │ │ ├── HoodieWriteHelper.java │ │ │ │ │ ├── InsertBucket.java │ │ │ │ │ ├── InsertBucketCumulativeWeightPair.java │ │ │ │ │ ├── ParallelismHelper.java │ │ │ │ │ ├── Partitioner.java │ │ │ │ │ └── SmallFile.java │ │ │ │ ├── compact │ │ │ │ │ ├── CompactHelpers.java │ │ │ │ │ ├── CompactionTriggerStrategy.java │ │ │ │ │ ├── HoodieCompactor.java │ │ │ │ │ ├── OperationResult.java │ │ │ │ │ ├── RunCompactionActionExecutor.java │ │ │ │ │ ├── ScheduleCompactionActionExecutor.java │ │ │ │ │ ├── plan │ │ │ │ │ │ └── generators │ │ │ │ │ │ │ ├── BaseHoodieCompactionPlanGenerator.java │ │ │ │ │ │ │ ├── HoodieCompactionPlanGenerator.java │ │ │ │ │ │ │ └── HoodieLogCompactionPlanGenerator.java │ │ │ │ │ └── strategy │ │ │ │ │ │ ├── BoundedIOCompactionStrategy.java │ │ │ │ │ │ ├── BoundedPartitionAwareCompactionStrategy.java │ │ │ │ │ │ ├── CompactionStrategy.java │ │ │ │ │ │ ├── CompositeCompactionStrategy.java │ │ │ │ │ │ ├── DayBasedCompactionStrategy.java │ │ │ │ │ │ ├── LogFileNumBasedCompactionStrategy.java │ │ │ │ │ │ ├── LogFileSizeBasedCompactionStrategy.java │ │ │ │ │ │ ├── PartitionRegexBasedCompactionStrategy.java │ │ │ │ │ │ ├── UnBoundedCompactionStrategy.java │ │ │ │ │ │ └── UnBoundedPartitionAwareCompactionStrategy.java │ │ │ │ ├── index │ │ │ │ │ ├── AbstractIndexingCatchupTask.java │ │ │ │ │ ├── BaseHoodieIndexClient.java │ │ │ │ │ ├── IndexingCatchupTask.java │ │ │ │ │ ├── IndexingCatchupTaskFactory.java │ │ │ │ │ ├── RecordBasedIndexingCatchupTask.java │ │ │ │ │ ├── RunIndexActionExecutor.java │ │ │ │ │ ├── ScheduleIndexActionExecutor.java │ │ │ │ │ └── WriteStatBasedIndexingCatchupTask.java │ │ │ │ ├── restore │ │ │ │ │ ├── BaseRestoreActionExecutor.java │ │ │ │ │ ├── CopyOnWriteRestoreActionExecutor.java │ │ │ │ │ ├── MergeOnReadRestoreActionExecutor.java │ │ │ │ │ └── RestoreUtils.java │ │ │ │ ├── rollback │ │ │ │ │ ├── BaseRollbackActionExecutor.java │ │ │ │ │ ├── BaseRollbackPlanActionExecutor.java │ │ │ │ │ ├── CopyOnWriteRollbackActionExecutor.java │ │ │ │ │ ├── ListingBasedRollbackRequest.java │ │ │ │ │ ├── ListingBasedRollbackStrategy.java │ │ │ │ │ ├── MarkerBasedRollbackStrategy.java │ │ │ │ │ ├── MergeOnReadRollbackActionExecutor.java │ │ │ │ │ ├── RestoreInstantComparatorFactory.java │ │ │ │ │ ├── RestorePlanActionExecutor.java │ │ │ │ │ ├── RollbackHelper.java │ │ │ │ │ ├── RollbackHelperFactory.java │ │ │ │ │ ├── RollbackHelperV1.java │ │ │ │ │ ├── RollbackUtils.java │ │ │ │ │ └── SerializableHoodieRollbackRequest.java │ │ │ │ ├── savepoint │ │ │ │ │ ├── SavepointActionExecutor.java │ │ │ │ │ └── SavepointHelpers.java │ │ │ │ └── ttl │ │ │ │ │ └── strategy │ │ │ │ │ ├── HoodiePartitionTTLStrategyFactory.java │ │ │ │ │ ├── KeepByCreationTimeStrategy.java │ │ │ │ │ ├── KeepByTimeStrategy.java │ │ │ │ │ ├── PartitionTTLStrategy.java │ │ │ │ │ ├── PartitionTTLStrategyType.java │ │ │ │ │ └── TTLStrategy.java │ │ │ ├── marker │ │ │ │ ├── AppendMarkerHandler.java │ │ │ │ ├── ConflictDetectionUtils.java │ │ │ │ ├── DirectWriteMarkers.java │ │ │ │ ├── DirectWriteMarkersV1.java │ │ │ │ ├── MarkerBasedRollbackUtils.java │ │ │ │ ├── SimpleDirectMarkerBasedDetectionStrategy.java │ │ │ │ ├── SimpleTransactionDirectMarkerBasedDetectionStrategy.java │ │ │ │ ├── TimelineServerBasedWriteMarkers.java │ │ │ │ ├── TimelineServerBasedWriteMarkersV1.java │ │ │ │ ├── WriteMarkers.java │ │ │ │ └── WriteMarkersFactory.java │ │ │ ├── repair │ │ │ │ └── RepairUtils.java │ │ │ ├── storage │ │ │ │ ├── HoodieConsistentBucketLayout.java │ │ │ │ ├── HoodieDefaultLayout.java │ │ │ │ ├── HoodieLayoutFactory.java │ │ │ │ ├── HoodieSimpleBucketLayout.java │ │ │ │ └── HoodieStorageLayout.java │ │ │ └── upgrade │ │ │ │ ├── DowngradeHandler.java │ │ │ │ ├── EightToNineUpgradeHandler.java │ │ │ │ ├── EightToSevenDowngradeHandler.java │ │ │ │ ├── FiveToFourDowngradeHandler.java │ │ │ │ ├── FiveToSixUpgradeHandler.java │ │ │ │ ├── FourToFiveUpgradeHandler.java │ │ │ │ ├── FourToThreeDowngradeHandler.java │ │ │ │ ├── NineToEightDowngradeHandler.java │ │ │ │ ├── OneToTwoUpgradeHandler.java │ │ │ │ ├── OneToZeroDowngradeHandler.java │ │ │ │ ├── SevenToEightUpgradeHandler.java │ │ │ │ ├── SevenToSixDowngradeHandler.java │ │ │ │ ├── SixToFiveDowngradeHandler.java │ │ │ │ ├── SixToSevenUpgradeHandler.java │ │ │ │ ├── SupportsUpgradeDowngrade.java │ │ │ │ ├── ThreeToFourUpgradeHandler.java │ │ │ │ ├── ThreeToTwoDowngradeHandler.java │ │ │ │ ├── TwoToOneDowngradeHandler.java │ │ │ │ ├── TwoToThreeUpgradeHandler.java │ │ │ │ ├── UpgradeDowngrade.java │ │ │ │ ├── UpgradeDowngradeUtils.java │ │ │ │ ├── UpgradeHandler.java │ │ │ │ └── ZeroToOneUpgradeHandler.java │ │ │ └── util │ │ │ ├── CommonClientUtils.java │ │ │ ├── ExecutorFactory.java │ │ │ └── HttpRequestClient.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── DummyActiveAction.java │ │ │ ├── HoodieTestCommitGenerator.java │ │ │ ├── async │ │ │ ├── TestAsyncArchiveService.java │ │ │ └── TestHoodieAsyncTableService.java │ │ │ ├── avro │ │ │ └── TestHoodieAvroParquetWriter.java │ │ │ ├── callback │ │ │ └── client │ │ │ │ └── http │ │ │ │ └── TestCallbackHttpClient.java │ │ │ ├── client │ │ │ ├── TestBaseHoodieTableServiceClient.java │ │ │ ├── TestBaseHoodieWriteClient.java │ │ │ ├── WriteClientTestUtils.java │ │ │ ├── embedded │ │ │ │ └── TestEmbeddedTimelineService.java │ │ │ ├── heartbeat │ │ │ │ └── TestHoodieHeartbeatClient.java │ │ │ ├── timeline │ │ │ │ ├── TestCompletionTimeQueryView.java │ │ │ │ └── TestHoodieTimelineArchiver.java │ │ │ ├── transaction │ │ │ │ ├── FileSystemBasedLockProviderTestClass.java │ │ │ │ ├── InProcessLockProviderWithRuntimeError.java │ │ │ │ ├── TestBucketIndexConcurrentFileWritesConflictResolutionStrategy.java │ │ │ │ ├── TestConcurrentSchemaEvolutionTableSchemaGetter.java │ │ │ │ ├── TestConflictResolutionStrategyUtil.java │ │ │ │ ├── TestHoodieLockMetrics.java │ │ │ │ ├── TestLockManager.java │ │ │ │ ├── TestPreferWriterConflictResolutionStrategy.java │ │ │ │ ├── TestSimpleConcurrentFileWritesConflictResolutionStrategy.java │ │ │ │ ├── TestSimpleSchemaConflictResolutionStrategy.java │ │ │ │ ├── TestTransactionManager.java │ │ │ │ ├── TestZookeeperBasedLockProvider.java │ │ │ │ └── lock │ │ │ │ │ ├── StorageBasedLockProviderTestBase.java │ │ │ │ │ ├── TestStorageBasedLockProvider.java │ │ │ │ │ ├── audit │ │ │ │ │ ├── TestAuditServiceFactory.java │ │ │ │ │ └── TestStorageLockProviderAuditService.java │ │ │ │ │ └── models │ │ │ │ │ ├── StorageLockClientFileTest.java │ │ │ │ │ └── TestLockProviderHeartbeatManager.java │ │ │ └── utils │ │ │ │ ├── TestCommitMetadataResolver.java │ │ │ │ ├── TestDeletePartitionUtils.java │ │ │ │ ├── TestFileSliceMetricUtils.java │ │ │ │ ├── TestLegacyArchivedMetaEntryReader.java │ │ │ │ └── TestTransactionUtils.java │ │ │ ├── common │ │ │ ├── table │ │ │ │ └── timeline │ │ │ │ │ └── TestArchivedTimelineV2.java │ │ │ └── testutils │ │ │ │ └── HoodieMetadataTestTable.java │ │ │ ├── config │ │ │ ├── TestHoodieErrorTableConfig.java │ │ │ ├── TestHoodieWriteConfig.java │ │ │ ├── TestHoodieWriteConfigFileStitching.java │ │ │ └── TestStorageBasedLockConfig.java │ │ │ ├── estimator │ │ │ ├── TestAverageRecordSizeEstimator.java │ │ │ └── TestRecordSizeEstimatorFactory.java │ │ │ ├── index │ │ │ ├── TestHoodieIndexUtils.java │ │ │ ├── bucket │ │ │ │ ├── TestBucketIdentifier.java │ │ │ │ ├── TestConsistentBucketIdIdentifier.java │ │ │ │ └── TestPartitionBucketIndexCalculator.java │ │ │ └── simple │ │ │ │ ├── TestGlobalSimpleIndex.java │ │ │ │ └── TestSimpleIndex.java │ │ │ ├── io │ │ │ ├── TestHoodieBinaryCopyHandleSchemaEvolution.java │ │ │ ├── TestHoodieCreateHandle.java │ │ │ ├── TestHoodieMergeHandleFactory.java │ │ │ ├── TestHoodieWriteHandle.java │ │ │ ├── TestSecondaryIndexStreamingTracker.java │ │ │ ├── TestSecondaryIndexStreamingTrackerFileSlice.java │ │ │ └── storage │ │ │ │ └── TestFileWriter.java │ │ │ ├── keygen │ │ │ ├── RawTripTestPayloadKeyGenerator.java │ │ │ ├── TestComplexAvroKeyGenerator.java │ │ │ ├── TestKeyGenUtils.java │ │ │ └── factory │ │ │ │ ├── TestCreateAvroKeyGeneratorByTypeWithFactory.java │ │ │ │ └── TestHoodieAvroKeyGeneratorFactory.java │ │ │ ├── metadata │ │ │ ├── TestHoodieBackedTableMetadataWriter.java │ │ │ ├── TestHoodieMetadataWriteUtils.java │ │ │ └── TestMetadataIndexMapper.java │ │ │ ├── metrics │ │ │ ├── TestHoodieConsoleMetrics.java │ │ │ ├── TestHoodieGraphiteMetrics.java │ │ │ ├── TestHoodieJmxMetrics.java │ │ │ ├── TestHoodieMetrics.java │ │ │ ├── TestSlf4jMetrics.java │ │ │ ├── datadog │ │ │ │ ├── TestDatadogHttpClient.java │ │ │ │ ├── TestDatadogMetricsReporter.java │ │ │ │ ├── TestDatadogReporter.java │ │ │ │ └── TestHoodieMetricsDatadogConfig.java │ │ │ ├── m3 │ │ │ │ └── TestM3Metrics.java │ │ │ └── prometheus │ │ │ │ ├── TestPrometheusReporter.java │ │ │ │ └── TestPushGateWayReporter.java │ │ │ ├── optimize │ │ │ └── TestHilbertCurveUtils.java │ │ │ ├── table │ │ │ ├── TestBaseHoodieTable.java │ │ │ ├── TestBaseTableServicePlanActionExecutor.java │ │ │ ├── TestBulkInsertPartitioner.java │ │ │ ├── TestHoodieTable.java │ │ │ ├── TestHoodieTableSchemaEvolution.java │ │ │ ├── action │ │ │ │ ├── TestCleanPlanner.java │ │ │ │ ├── clean │ │ │ │ │ └── TestCleanPlanActionExecutor.java │ │ │ │ ├── cluster │ │ │ │ │ └── strategy │ │ │ │ │ │ └── TestPartitionAwareClusteringPlanStrategy.java │ │ │ │ ├── commit │ │ │ │ │ └── TestWriterHelperBase.java │ │ │ │ ├── compact │ │ │ │ │ └── TestScheduleCompactionActionExecutor.java │ │ │ │ ├── index │ │ │ │ │ └── TestIndexingCatchupTask.java │ │ │ │ ├── rollback │ │ │ │ │ ├── HoodieRollbackTestBase.java │ │ │ │ │ ├── TestMarkerBasedRollbackStrategy.java │ │ │ │ │ ├── TestRollbackHelper.java │ │ │ │ │ └── TestRollbackUtils.java │ │ │ │ └── savepoint │ │ │ │ │ └── TestSavepointActionExecutor.java │ │ │ ├── cluster │ │ │ │ └── strategy │ │ │ │ │ └── TestClusteringPlanStrategyConfigCompatibility.java │ │ │ ├── marker │ │ │ │ └── TestWriteMarkersFactory.java │ │ │ ├── repair │ │ │ │ └── TestRepairUtils.java │ │ │ └── upgrade │ │ │ │ ├── TestEightToNineUpgradeHandler.java │ │ │ │ ├── TestEightToSevenDowngradeHandler.java │ │ │ │ ├── TestNineToEightDowngradeHandler.java │ │ │ │ ├── TestSevenToEightUpgradeHandler.java │ │ │ │ ├── TestTwoToThreeUpgradeHandler.java │ │ │ │ └── TestUpgradeDowngradeUtils.java │ │ │ ├── testutils │ │ │ ├── Assertions.java │ │ │ ├── GenericRecordValidationTestUtils.java │ │ │ ├── HoodieMergeOnReadTestUtils.java │ │ │ ├── HoodieWriteableTestTable.java │ │ │ ├── MetadataMergeWriteStatus.java │ │ │ └── providers │ │ │ │ ├── DFSProvider.java │ │ │ │ ├── HoodieEngineContextProvider.java │ │ │ │ ├── HoodieMetaClientProvider.java │ │ │ │ └── HoodieWriteClientProvider.java │ │ │ └── utils │ │ │ ├── HoodieWriterClientTestHarness.java │ │ │ ├── TestCommonClientUtils.java │ │ │ ├── TestConcatenatingIterator.java │ │ │ ├── TestLazyConcatenatingIterator.java │ │ │ └── TestMetadataConversionUtils.java │ │ └── resources │ │ ├── datadog.properties │ │ ├── indexMissingVersion1.json │ │ ├── indexMissingVersion2.json │ │ └── prometheus.properties ├── hudi-flink-client │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── client │ │ │ ├── FlinkRowDataWriteClient.java │ │ │ ├── HoodieFlinkTableServiceClient.java │ │ │ ├── HoodieFlinkWriteClient.java │ │ │ ├── clustering │ │ │ │ └── plan │ │ │ │ │ └── strategy │ │ │ │ │ ├── FlinkConsistentBucketClusteringPlanStrategy.java │ │ │ │ │ ├── FlinkSizeBasedClusteringPlanStrategy.java │ │ │ │ │ ├── FlinkSizeBasedClusteringPlanStrategyRecently.java │ │ │ │ │ └── FlinkSkipSingleFileClusteringPlanStrategy.java │ │ │ ├── common │ │ │ │ └── HoodieFlinkEngineContext.java │ │ │ └── model │ │ │ │ ├── AbstractHoodieRowData.java │ │ │ │ ├── BootstrapRowData.java │ │ │ │ ├── CommitTimeFlinkRecordMerger.java │ │ │ │ ├── EventTimeFlinkRecordMerger.java │ │ │ │ ├── HoodieFlinkInternalRow.java │ │ │ │ ├── HoodieFlinkInternalRowSerializer.java │ │ │ │ ├── HoodieFlinkRecord.java │ │ │ │ ├── HoodieFlinkRecordMerger.java │ │ │ │ ├── HoodieRowData.java │ │ │ │ ├── HoodieRowDataCreation.java │ │ │ │ ├── HoodieRowDataWithMetaFields.java │ │ │ │ ├── HoodieRowDataWithUpdatedMetaField.java │ │ │ │ └── PartialUpdateFlinkRecordMerger.java │ │ │ ├── execution │ │ │ ├── ExplicitWriteHandler.java │ │ │ └── FlinkLazyInsertIterable.java │ │ │ ├── index │ │ │ ├── FlinkHoodieIndex.java │ │ │ ├── FlinkHoodieIndexFactory.java │ │ │ └── state │ │ │ │ └── FlinkInMemoryStateIndex.java │ │ │ ├── io │ │ │ ├── ExplicitWriteHandleFactory.java │ │ │ ├── FlinkAppendHandle.java │ │ │ ├── FlinkConcatHandle.java │ │ │ ├── FlinkCreateHandle.java │ │ │ ├── FlinkFileGroupReaderBasedIncrementalMergeHandle.java │ │ │ ├── FlinkFileGroupReaderBasedMergeHandle.java │ │ │ ├── FlinkIncrementalConcatHandle.java │ │ │ ├── FlinkIncrementalMergeHandle.java │ │ │ ├── FlinkIncrementalMergeHandleWithChangeLog.java │ │ │ ├── FlinkMergeHandle.java │ │ │ ├── FlinkMergeHandleWithChangeLog.java │ │ │ ├── FlinkWriteHandleFactory.java │ │ │ ├── MergeHandleUtils.java │ │ │ ├── MiniBatchHandle.java │ │ │ ├── log │ │ │ │ └── block │ │ │ │ │ ├── HoodieFlinkAvroDataBlock.java │ │ │ │ │ └── HoodieFlinkParquetDataBlock.java │ │ │ ├── storage │ │ │ │ └── row │ │ │ │ │ ├── HoodieRowDataCreateHandle.java │ │ │ │ │ ├── HoodieRowDataFileWriter.java │ │ │ │ │ ├── HoodieRowDataFileWriterFactory.java │ │ │ │ │ ├── HoodieRowDataParquetOutputStreamWriter.java │ │ │ │ │ ├── HoodieRowDataParquetWriteSupport.java │ │ │ │ │ ├── HoodieRowDataParquetWriter.java │ │ │ │ │ ├── RowDataParquetWriteSupport.java │ │ │ │ │ └── parquet │ │ │ │ │ ├── ParquetRowDataWriter.java │ │ │ │ │ └── ParquetSchemaConverter.java │ │ │ └── v2 │ │ │ │ ├── FlinkRecordSizeEstimator.java │ │ │ │ └── RowDataLogWriteHandle.java │ │ │ ├── metadata │ │ │ └── FlinkHoodieBackedTableMetadataWriter.java │ │ │ ├── table │ │ │ ├── ExplicitWriteHandleTable.java │ │ │ ├── HoodieFlinkCopyOnWriteTable.java │ │ │ ├── HoodieFlinkMergeOnReadTable.java │ │ │ ├── HoodieFlinkTable.java │ │ │ ├── action │ │ │ │ ├── commit │ │ │ │ │ ├── BaseFlinkCommitActionExecutor.java │ │ │ │ │ ├── FlinkAutoCommitActionExecutor.java │ │ │ │ │ ├── FlinkBulkInsertPreppedCommitActionExecutor.java │ │ │ │ │ ├── FlinkDeleteHelper.java │ │ │ │ │ ├── FlinkDeletePartitionCommitActionExecutor.java │ │ │ │ │ ├── FlinkDeletePreppedCommitActionExecutor.java │ │ │ │ │ ├── FlinkInsertCommitActionExecutor.java │ │ │ │ │ ├── FlinkInsertOverwriteCommitActionExecutor.java │ │ │ │ │ ├── FlinkInsertOverwriteTableCommitActionExecutor.java │ │ │ │ │ ├── FlinkInsertPreppedCommitActionExecutor.java │ │ │ │ │ ├── FlinkPartitionTTLActionExecutor.java │ │ │ │ │ ├── FlinkUpsertCommitActionExecutor.java │ │ │ │ │ ├── FlinkUpsertPreppedCommitActionExecutor.java │ │ │ │ │ ├── FlinkWriteHelper.java │ │ │ │ │ └── delta │ │ │ │ │ │ ├── BaseFlinkDeltaCommitActionExecutor.java │ │ │ │ │ │ ├── FlinkUpsertDeltaCommitActionExecutor.java │ │ │ │ │ │ └── FlinkUpsertPreppedDeltaCommitActionExecutor.java │ │ │ │ └── compact │ │ │ │ │ └── HoodieFlinkMergeOnReadTableCompactor.java │ │ │ ├── format │ │ │ │ └── FlinkRecordContext.java │ │ │ └── upgrade │ │ │ │ └── FlinkUpgradeDowngradeHelper.java │ │ │ └── util │ │ │ ├── AvroSchemaConverter.java │ │ │ ├── AvroToRowDataConverters.java │ │ │ ├── FlinkClientUtil.java │ │ │ ├── MutableIteratorWrapperIterator.java │ │ │ ├── OrderingValueEngineTypeConverter.java │ │ │ ├── RecordKeyToRowDataConverter.java │ │ │ ├── RowDataAvroQueryContexts.java │ │ │ ├── RowDataToAvroConverters.java │ │ │ ├── RowDataUtils.java │ │ │ ├── RowProjection.java │ │ │ ├── SchemaEvolvingRowDataProjection.java │ │ │ ├── TypeConverters.java │ │ │ ├── WriteStatMerger.java │ │ │ └── WriteStatusMerger.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ ├── client │ │ ├── TestFlinkWriteClient.java │ │ └── common │ │ │ └── TestHoodieFlinkEngineContext.java │ │ ├── index │ │ └── bloom │ │ │ └── TestFlinkHoodieBloomIndex.java │ │ ├── io │ │ └── storage │ │ │ └── row │ │ │ └── parquet │ │ │ └── TestParquetSchemaConverter.java │ │ ├── merge │ │ ├── TestHoodieFlinkRecordMerger.java │ │ └── TestPartialUpdateFlinkRecordMerger.java │ │ ├── table │ │ └── action │ │ │ └── cluster │ │ │ └── strategy │ │ │ └── TestFlinkSizeBasedClusteringPlanStrategy.java │ │ ├── testutils │ │ ├── HoodieFlinkClientTestHarness.java │ │ └── HoodieFlinkWriteableTestTable.java │ │ └── util │ │ ├── TestOrderingValueEngineTypeConverter.java │ │ └── TestWriteStatusMerger.java ├── hudi-java-client │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── client │ │ │ ├── HoodieJavaTableServiceClient.java │ │ │ ├── HoodieJavaWriteClient.java │ │ │ ├── clustering │ │ │ │ ├── plan │ │ │ │ │ └── strategy │ │ │ │ │ │ └── JavaSizeBasedClusteringPlanStrategy.java │ │ │ │ └── run │ │ │ │ │ └── strategy │ │ │ │ │ ├── JavaExecutionStrategy.java │ │ │ │ │ └── JavaSortAndSizeExecutionStrategy.java │ │ │ └── common │ │ │ │ ├── HoodieJavaEngineContext.java │ │ │ │ └── JavaTaskContextSupplier.java │ │ │ ├── execution │ │ │ ├── JavaLazyInsertIterable.java │ │ │ └── bulkinsert │ │ │ │ ├── JavaBulkInsertInternalPartitionerFactory.java │ │ │ │ ├── JavaCustomColumnsSortPartitioner.java │ │ │ │ ├── JavaGlobalSortPartitioner.java │ │ │ │ └── JavaNonSortPartitioner.java │ │ │ ├── index │ │ │ ├── JavaHoodieIndex.java │ │ │ └── JavaHoodieIndexFactory.java │ │ │ ├── metadata │ │ │ ├── JavaHoodieBackedTableMetadataWriter.java │ │ │ └── JavaHoodieMetadataBulkInsertPartitioner.java │ │ │ └── table │ │ │ ├── HoodieJavaCopyOnWriteTable.java │ │ │ ├── HoodieJavaMergeOnReadTable.java │ │ │ ├── HoodieJavaTable.java │ │ │ ├── action │ │ │ ├── cluster │ │ │ │ └── JavaExecuteClusteringCommitActionExecutor.java │ │ │ ├── commit │ │ │ │ ├── BaseJavaCommitActionExecutor.java │ │ │ │ ├── JavaBulkInsertCommitActionExecutor.java │ │ │ │ ├── JavaBulkInsertHelper.java │ │ │ │ ├── JavaBulkInsertPreppedCommitActionExecutor.java │ │ │ │ ├── JavaDeleteCommitActionExecutor.java │ │ │ │ ├── JavaDeleteHelper.java │ │ │ │ ├── JavaDeletePreppedCommitActionExecutor.java │ │ │ │ ├── JavaInsertCommitActionExecutor.java │ │ │ │ ├── JavaInsertOverwriteCommitActionExecutor.java │ │ │ │ ├── JavaInsertOverwriteTableCommitActionExecutor.java │ │ │ │ ├── JavaInsertPreppedCommitActionExecutor.java │ │ │ │ ├── JavaUpsertCommitActionExecutor.java │ │ │ │ ├── JavaUpsertPartitioner.java │ │ │ │ ├── JavaUpsertPreppedCommitActionExecutor.java │ │ │ │ └── JavaWriteHelper.java │ │ │ ├── compact │ │ │ │ └── HoodieJavaMergeOnReadTableCompactor.java │ │ │ └── deltacommit │ │ │ │ ├── BaseJavaDeltaCommitActionExecutor.java │ │ │ │ ├── JavaBulkInsertDeltaCommitActionExecutor.java │ │ │ │ ├── JavaBulkInsertPreppedDeltaCommitActionExecutor.java │ │ │ │ ├── JavaDeleteDeltaCommitActionExecutor.java │ │ │ │ ├── JavaDeletePreppedDeltaCommitActionExecutor.java │ │ │ │ ├── JavaInsertDeltaCommitActionExecutor.java │ │ │ │ ├── JavaUpsertDeltaCommitActionExecutor.java │ │ │ │ └── JavaUpsertPreppedDeltaCommitActionExecutor.java │ │ │ └── upgrade │ │ │ └── JavaUpgradeDowngradeHelper.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── client │ │ │ ├── TestHoodieJavaWriteClientInsert.java │ │ │ ├── TestJavaHoodieBackedMetadata.java │ │ │ ├── common │ │ │ │ ├── TestHoodieJavaEngineContext.java │ │ │ │ └── TestMultipleHoodieJavaWriteClient.java │ │ │ └── functional │ │ │ │ ├── TestHoodieJavaClientOnCopyOnWriteStorage.java │ │ │ │ ├── TestHoodieJavaClientOnCopyOnWriteStorageForTestFormat.java │ │ │ │ └── TestHoodieJavaClientOnMergeOnReadStorage.java │ │ │ ├── common │ │ │ └── table │ │ │ │ └── read │ │ │ │ ├── HoodieFileGroupReaderOnJavaTestBase.java │ │ │ │ └── TestHoodieFileGroupReaderOnJava.java │ │ │ ├── execution │ │ │ └── bulkinsert │ │ │ │ └── TestJavaBulkInsertInternalPartitioner.java │ │ │ ├── hadoop │ │ │ └── TestHoodieFileGroupReaderOnHive.java │ │ │ ├── table │ │ │ └── action │ │ │ │ └── commit │ │ │ │ ├── TestJavaCopyOnWriteActionExecutor.java │ │ │ │ └── TestSchemaEvolutionClient.java │ │ │ └── testutils │ │ │ ├── ArrayWritableTestUtil.java │ │ │ ├── HoodieJavaClientTestHarness.java │ │ │ └── TestHoodieMetadataBase.java │ │ └── resources │ │ └── META-INF │ │ └── services │ │ └── org.apache.hudi.common.HoodieTableFormat ├── hudi-spark-client │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── hudi │ │ │ │ ├── DefaultSparkRecordMerger.java │ │ │ │ ├── HoodieSparkRecordMerger.java │ │ │ │ ├── OverwriteWithLatestSparkRecordMerger.java │ │ │ │ ├── async │ │ │ │ ├── SparkAsyncClusteringService.java │ │ │ │ └── SparkAsyncCompactService.java │ │ │ │ ├── client │ │ │ │ ├── CoalescingPartitioner.java │ │ │ │ ├── HoodieReadClient.java │ │ │ │ ├── HoodieSparkClusteringClient.java │ │ │ │ ├── HoodieSparkCompactor.java │ │ │ │ ├── HoodieWriteResult.java │ │ │ │ ├── SparkRDDMetadataWriteClient.java │ │ │ │ ├── SparkRDDReadClient.java │ │ │ │ ├── SparkRDDTableServiceClient.java │ │ │ │ ├── SparkRDDWriteClient.java │ │ │ │ ├── SparkTaskContextSupplier.java │ │ │ │ ├── StreamingMetadataWriteHandler.java │ │ │ │ ├── bootstrap │ │ │ │ │ └── HoodieSparkBootstrapSchemaProvider.java │ │ │ │ ├── clustering │ │ │ │ │ ├── plan │ │ │ │ │ │ └── strategy │ │ │ │ │ │ │ ├── SparkConsistentBucketClusteringPlanStrategy.java │ │ │ │ │ │ │ ├── SparkSingleFileSortPlanStrategy.java │ │ │ │ │ │ │ ├── SparkSizeBasedClusteringPlanStrategy.java │ │ │ │ │ │ │ └── SparkStreamCopyClusteringPlanStrategy.java │ │ │ │ │ ├── run │ │ │ │ │ │ └── strategy │ │ │ │ │ │ │ ├── ExecutionStrategyUtil.java │ │ │ │ │ │ │ ├── MultipleSparkJobExecutionStrategy.java │ │ │ │ │ │ │ ├── SingleSparkJobConsistentHashingExecutionStrategy.java │ │ │ │ │ │ │ ├── SingleSparkJobExecutionStrategy.java │ │ │ │ │ │ │ ├── SparkBinaryCopyClusteringExecutionStrategy.java │ │ │ │ │ │ │ ├── SparkConsistentBucketClusteringExecutionStrategy.java │ │ │ │ │ │ │ ├── SparkSingleFileSortExecutionStrategy.java │ │ │ │ │ │ │ ├── SparkSortAndSizeExecutionStrategy.java │ │ │ │ │ │ │ └── SparkStreamCopyClusteringExecutionStrategy.java │ │ │ │ │ └── update │ │ │ │ │ │ └── strategy │ │ │ │ │ │ ├── BaseSparkUpdateStrategy.java │ │ │ │ │ │ ├── SparkAllowUpdateStrategy.java │ │ │ │ │ │ ├── SparkConsistentBucketDuplicateUpdateStrategy.java │ │ │ │ │ │ └── SparkRejectUpdateStrategy.java │ │ │ │ ├── common │ │ │ │ │ ├── HoodieSparkEngineContext.java │ │ │ │ │ └── SparkReaderContextFactory.java │ │ │ │ ├── model │ │ │ │ │ └── HoodieInternalRow.java │ │ │ │ ├── utils │ │ │ │ │ ├── SparkInternalSchemaConverter.java │ │ │ │ │ ├── SparkMetadataWriterUtils.java │ │ │ │ │ ├── SparkPartitionUtils.java │ │ │ │ │ ├── SparkReleaseResources.java │ │ │ │ │ └── SparkValidatorUtils.java │ │ │ │ └── validator │ │ │ │ │ ├── SparkPreCommitValidator.java │ │ │ │ │ ├── SqlQueryEqualityPreCommitValidator.java │ │ │ │ │ ├── SqlQueryInequalityPreCommitValidator.java │ │ │ │ │ ├── SqlQueryPreCommitValidator.java │ │ │ │ │ └── SqlQuerySingleResultPreCommitValidator.java │ │ │ │ ├── common │ │ │ │ └── model │ │ │ │ │ └── HoodieSparkRecord.java │ │ │ │ ├── data │ │ │ │ ├── CloseableIteratorListener.java │ │ │ │ ├── HoodieJavaPairRDD.java │ │ │ │ ├── HoodieJavaRDD.java │ │ │ │ ├── HoodieSparkLongAccumulator.java │ │ │ │ ├── HoodieSparkRDDUtils.java │ │ │ │ └── partitioner │ │ │ │ │ └── ConditionalRangePartitioner.java │ │ │ │ ├── execution │ │ │ │ ├── SparkLazyInsertIterable.java │ │ │ │ └── bulkinsert │ │ │ │ │ ├── BucketIndexBulkInsertPartitionerWithRows.java │ │ │ │ │ ├── BulkInsertInternalPartitionerFactory.java │ │ │ │ │ ├── BulkInsertInternalPartitionerWithRowsFactory.java │ │ │ │ │ ├── BulkInsertMapFunction.java │ │ │ │ │ ├── ConsistentBucketIndexBulkInsertPartitionerWithRows.java │ │ │ │ │ ├── GlobalSortPartitioner.java │ │ │ │ │ ├── GlobalSortPartitionerWithRows.java │ │ │ │ │ ├── NonSortPartitioner.java │ │ │ │ │ ├── NonSortPartitionerWithRows.java │ │ │ │ │ ├── PartitionPathRDDPartitioner.java │ │ │ │ │ ├── PartitionPathRepartitionAndSortPartitioner.java │ │ │ │ │ ├── PartitionPathRepartitionAndSortPartitionerWithRows.java │ │ │ │ │ ├── PartitionPathRepartitionPartitioner.java │ │ │ │ │ ├── PartitionPathRepartitionPartitionerWithRows.java │ │ │ │ │ ├── PartitionSortPartitionerWithRows.java │ │ │ │ │ ├── RDDBucketIndexPartitioner.java │ │ │ │ │ ├── RDDConsistentBucketBulkInsertPartitioner.java │ │ │ │ │ ├── RDDCustomColumnsSortPartitioner.java │ │ │ │ │ ├── RDDPartitionSortPartitioner.java │ │ │ │ │ ├── RDDSimpleBucketBulkInsertPartitioner.java │ │ │ │ │ ├── RDDSpatialCurveSortPartitioner.java │ │ │ │ │ ├── RowCustomColumnsSortPartitioner.java │ │ │ │ │ ├── RowRecordKeyExtractor.java │ │ │ │ │ ├── RowSpatialCurveSortPartitioner.java │ │ │ │ │ └── SpatialCurveSortPartitionerBase.java │ │ │ │ ├── index │ │ │ │ ├── HoodieSparkIndexClient.java │ │ │ │ ├── SparkHoodieIndex.java │ │ │ │ ├── SparkHoodieIndexFactory.java │ │ │ │ ├── SparkMetadataTableGlobalRecordLevelIndex.java │ │ │ │ ├── SparkMetadataTableRecordLevelIndex.java │ │ │ │ ├── bloom │ │ │ │ │ ├── BucketizedBloomCheckPartitioner.java │ │ │ │ │ ├── HoodieBloomFilterProbingResult.java │ │ │ │ │ ├── HoodieFileProbingFunction.java │ │ │ │ │ ├── HoodieMetadataBloomFilterProbingFunction.java │ │ │ │ │ └── SparkHoodieBloomIndexHelper.java │ │ │ │ ├── bucket │ │ │ │ │ └── HoodieSparkConsistentBucketIndex.java │ │ │ │ └── expression │ │ │ │ │ ├── ExpressionIndexSparkFunctions.java │ │ │ │ │ └── HoodieSparkExpressionIndex.java │ │ │ │ ├── io │ │ │ │ └── storage │ │ │ │ │ ├── HoodieSparkBootstrapFileReader.java │ │ │ │ │ ├── HoodieSparkFileReader.java │ │ │ │ │ ├── HoodieSparkFileReaderFactory.java │ │ │ │ │ ├── HoodieSparkFileWriter.java │ │ │ │ │ ├── HoodieSparkFileWriterFactory.java │ │ │ │ │ ├── HoodieSparkIOFactory.java │ │ │ │ │ ├── HoodieSparkParquetReader.java │ │ │ │ │ ├── HoodieSparkParquetStreamWriter.java │ │ │ │ │ ├── HoodieSparkParquetWriter.java │ │ │ │ │ └── row │ │ │ │ │ ├── HoodieInternalRowFileWriter.java │ │ │ │ │ ├── HoodieInternalRowFileWriterFactory.java │ │ │ │ │ ├── HoodieInternalRowParquetWriter.java │ │ │ │ │ ├── HoodieRowCreateHandle.java │ │ │ │ │ ├── HoodieRowParquetConfig.java │ │ │ │ │ └── HoodieRowParquetWriteSupport.java │ │ │ │ ├── keygen │ │ │ │ ├── AutoRecordGenWrapperKeyGenerator.java │ │ │ │ ├── BuiltinKeyGenerator.java │ │ │ │ ├── ComplexKeyGenerator.java │ │ │ │ ├── CustomKeyGenerator.java │ │ │ │ ├── GlobalDeleteKeyGenerator.java │ │ │ │ ├── NonpartitionedKeyGenerator.java │ │ │ │ ├── PartitionPathFormatterBase.java │ │ │ │ ├── SimpleKeyGenerator.java │ │ │ │ ├── SparkKeyGeneratorInterface.java │ │ │ │ ├── StringPartitionPathFormatter.java │ │ │ │ ├── TimestampBasedKeyGenerator.java │ │ │ │ ├── UTF8StringPartitionPathFormatter.java │ │ │ │ └── factory │ │ │ │ │ └── HoodieSparkKeyGeneratorFactory.java │ │ │ │ ├── merge │ │ │ │ └── SparkRecordMergingUtils.java │ │ │ │ ├── metadata │ │ │ │ ├── SparkHoodieBackedTableMetadataWriter.java │ │ │ │ ├── SparkHoodieBackedTableMetadataWriterTableVersionSix.java │ │ │ │ ├── SparkHoodieMetadataBulkInsertPartitioner.java │ │ │ │ └── SparkMetadataWriterFactory.java │ │ │ │ ├── metrics │ │ │ │ └── DistributedRegistry.java │ │ │ │ ├── sort │ │ │ │ └── SpaceCurveSortingHelper.java │ │ │ │ ├── stats │ │ │ │ └── SparkValueMetadataUtils.java │ │ │ │ └── table │ │ │ │ ├── HoodieSparkCopyOnWriteTable.java │ │ │ │ ├── HoodieSparkMergeOnReadMetadataTable.java │ │ │ │ ├── HoodieSparkMergeOnReadTable.java │ │ │ │ ├── HoodieSparkTable.java │ │ │ │ ├── action │ │ │ │ ├── bootstrap │ │ │ │ │ ├── BaseBootstrapMetadataHandler.java │ │ │ │ │ ├── BootstrapMetadataHandler.java │ │ │ │ │ ├── MetadataBootstrapHandlerFactory.java │ │ │ │ │ ├── OrcBootstrapMetadataHandler.java │ │ │ │ │ ├── ParquetBootstrapMetadataHandler.java │ │ │ │ │ ├── SparkBootstrapCommitActionExecutor.java │ │ │ │ │ └── SparkBootstrapDeltaCommitActionExecutor.java │ │ │ │ ├── cluster │ │ │ │ │ └── SparkExecuteClusteringCommitActionExecutor.java │ │ │ │ ├── commit │ │ │ │ │ ├── BaseSparkBucketIndexBucketInfoGetter.java │ │ │ │ │ ├── BaseSparkCommitActionExecutor.java │ │ │ │ │ ├── BucketBulkInsertDataInternalWriterHelper.java │ │ │ │ │ ├── BulkInsertDataInternalWriterHelper.java │ │ │ │ │ ├── ConsistentBucketBulkInsertDataInternalWriterHelper.java │ │ │ │ │ ├── InsertOverwriteBucketInfoGetter.java │ │ │ │ │ ├── ListBasedSparkBucketInfoGetter.java │ │ │ │ │ ├── MapBasedSparkBucketInfoGetter.java │ │ │ │ │ ├── SparkAutoCommitExecutor.java │ │ │ │ │ ├── SparkBucketIndexBucketInfoGetter.java │ │ │ │ │ ├── SparkBucketIndexPartitioner.java │ │ │ │ │ ├── SparkBucketInfoGetter.java │ │ │ │ │ ├── SparkBulkInsertCommitActionExecutor.java │ │ │ │ │ ├── SparkBulkInsertHelper.java │ │ │ │ │ ├── SparkBulkInsertPreppedCommitActionExecutor.java │ │ │ │ │ ├── SparkDeleteCommitActionExecutor.java │ │ │ │ │ ├── SparkDeletePartitionCommitActionExecutor.java │ │ │ │ │ ├── SparkDeletePreppedCommitActionExecutor.java │ │ │ │ │ ├── SparkHoodiePartitioner.java │ │ │ │ │ ├── SparkInsertCommitActionExecutor.java │ │ │ │ │ ├── SparkInsertOverwriteCommitActionExecutor.java │ │ │ │ │ ├── SparkInsertOverwritePartitioner.java │ │ │ │ │ ├── SparkInsertOverwriteTableCommitActionExecutor.java │ │ │ │ │ ├── SparkInsertPreppedCommitActionExecutor.java │ │ │ │ │ ├── SparkMetadataTableFirstDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkMetadataTableSecondaryDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkMetadataTableUpsertPartitioner.java │ │ │ │ │ ├── SparkPartitionBucketIndexBucketInfoGetter.java │ │ │ │ │ ├── SparkPartitionBucketIndexPartitioner.java │ │ │ │ │ ├── SparkPartitionTTLActionExecutor.java │ │ │ │ │ ├── SparkUpsertCommitActionExecutor.java │ │ │ │ │ ├── SparkUpsertPreppedCommitActionExecutor.java │ │ │ │ │ └── UpsertPartitioner.java │ │ │ │ ├── compact │ │ │ │ │ └── HoodieSparkMergeOnReadTableCompactor.java │ │ │ │ └── deltacommit │ │ │ │ │ ├── BaseSparkDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkBulkInsertDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkBulkInsertPreppedDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkDeleteDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkDeletePreppedDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkInsertDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkInsertPreppedDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkUpsertDeltaCommitActionExecutor.java │ │ │ │ │ ├── SparkUpsertDeltaCommitPartitioner.java │ │ │ │ │ └── SparkUpsertPreppedDeltaCommitActionExecutor.java │ │ │ │ └── upgrade │ │ │ │ └── SparkUpgradeDowngradeHelper.java │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ ├── hudi │ │ │ ├── AvroConversionUtils.scala │ │ │ ├── BaseSparkInternalRecordContext.java │ │ │ ├── BaseSparkInternalRowReaderContext.java │ │ │ ├── HoodieConversionUtils.scala │ │ │ ├── HoodieDatasetBulkInsertHelper.scala │ │ │ ├── HoodiePartitionCDCFileGroupMapping.scala │ │ │ ├── HoodiePartitionFileSliceMapping.scala │ │ │ ├── HoodiePartitionValues.scala │ │ │ ├── HoodieSparkUtils.scala │ │ │ ├── HoodieUTF8String.scala │ │ │ ├── HoodieUnsafeRDD.scala │ │ │ ├── SparkAdapterSupport.scala │ │ │ ├── SparkConversionUtils.scala │ │ │ ├── SparkFileFormatInternalRecordContext.scala │ │ │ ├── SparkFileFormatInternalRowReaderContext.scala │ │ │ ├── SparkRowSerDe.scala │ │ │ ├── spark │ │ │ │ └── internal │ │ │ │ │ └── ReflectUtil.java │ │ │ ├── unsafe │ │ │ │ └── UTF8StringBuilder.java │ │ │ └── util │ │ │ │ ├── CloseableInternalRowIterator.scala │ │ │ │ ├── CloseableScalaIterator.scala │ │ │ │ ├── ExceptionWrappingIterator.scala │ │ │ │ ├── JFunction.scala │ │ │ │ ├── JavaScalaConverters.scala │ │ │ │ ├── OrderingValueEngineTypeConverter.java │ │ │ │ └── SparkKeyGenUtils.scala │ │ │ └── spark │ │ │ ├── HoodieSparkKryoRegistrar.scala │ │ │ └── sql │ │ │ ├── BucketPartitionUtils.scala │ │ │ ├── DataFrameUtil.scala │ │ │ ├── HoodieCatalystExpressionUtils.scala │ │ │ ├── HoodieCatalystPlansUtils.scala │ │ │ ├── HoodieDataTypeUtils.scala │ │ │ ├── HoodieInternalRowUtils.scala │ │ │ ├── HoodieSchemaUtils.scala │ │ │ ├── HoodieUTF8StringFactory.scala │ │ │ ├── HoodieUnsafeRowUtils.scala │ │ │ ├── HoodieUnsafeUtils.scala │ │ │ ├── avro │ │ │ ├── HoodieAvroDeserializer.scala │ │ │ ├── HoodieAvroSchemaConverters.scala │ │ │ └── HoodieAvroSerializer.scala │ │ │ ├── catalyst │ │ │ └── expressions │ │ │ │ └── AttributeEq.scala │ │ │ ├── execution │ │ │ ├── SQLConfInjectingRDD.scala │ │ │ └── datasources │ │ │ │ ├── HoodieSparkPartitionedFileUtils.scala │ │ │ │ ├── SparkColumnarFileReader.scala │ │ │ │ ├── SparkParsePartitionUtil.scala │ │ │ │ └── parquet │ │ │ │ ├── HoodieParquetFileFormatHelper.scala │ │ │ │ ├── HoodieParquetReadSupport.scala │ │ │ │ └── SparkBasicSchemaEvolution.scala │ │ │ ├── hudi │ │ │ ├── MultipleColumnarFileFormatReader.scala │ │ │ ├── SparkAdapter.scala │ │ │ └── execution │ │ │ │ └── RangeSample.scala │ │ │ └── parser │ │ │ └── HoodieExtendedParserInterface.scala │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ ├── hudi │ │ │ ├── TestBaseSparkInternalRowReaderContext.java │ │ │ ├── callback │ │ │ │ └── TestHoodieClientInitCallback.java │ │ │ ├── client │ │ │ │ ├── TestClientRollback.java │ │ │ │ ├── TestCoalescingPartitioner.java │ │ │ │ ├── TestCompactionAdminClient.java │ │ │ │ ├── TestFileBasedLockProvider.java │ │ │ │ ├── TestHoodieReadClient.java │ │ │ │ ├── TestHoodieSparkIndex.java │ │ │ │ ├── TestMultiFS.java │ │ │ │ ├── TestPartitionTTLManagement.java │ │ │ │ ├── TestSavepoint.java │ │ │ │ ├── TestSimpleTransactionDirectMarkerBasedDetectionStrategyWithZKLockProvider.java │ │ │ │ ├── TestSparkHoodieMetadataBulkInsertPartitioner.java │ │ │ │ ├── TestSparkRDDMetadataWriteClient.java │ │ │ │ ├── TestSparkRDDWriteClient.java │ │ │ │ ├── TestStreamingMetadataWriteHandler.java │ │ │ │ ├── TestUpdateSchemaEvolution.java │ │ │ │ ├── TestWriteStatus.java │ │ │ │ ├── bootstrap │ │ │ │ │ ├── TestBootstrapRegexModeSelector.java │ │ │ │ │ └── TestUniformBootstrapModeSelector.java │ │ │ │ ├── clustering │ │ │ │ │ └── plan │ │ │ │ │ │ └── strategy │ │ │ │ │ │ ├── TestSparkConsistentBucketClusteringPlanStrategy.java │ │ │ │ │ │ └── TestSparkSizeBasedClusteringPlanStrategy.java │ │ │ │ ├── common │ │ │ │ │ ├── TestHoodieSparkEngineContext.java │ │ │ │ │ ├── TestHoodieSparkEngineDynamicRepartition.java │ │ │ │ │ └── TestSparkReaderContextFactory.java │ │ │ │ └── functional │ │ │ │ │ ├── TestExternalPathHandling.java │ │ │ │ │ ├── TestHoodieBackedTableMetadata.java │ │ │ │ │ ├── TestHoodieMetadataBase.java │ │ │ │ │ ├── TestHoodieMetadataBootstrap.java │ │ │ │ │ ├── TestSavepointRestoreCopyOnWrite.java │ │ │ │ │ └── TestSavepointRestoreCopyOnWriteWithTestFormat.java │ │ │ ├── common │ │ │ │ └── fs │ │ │ │ │ ├── NonSerializableFileSystem.java │ │ │ │ │ └── TestHoodieSerializableFileStatus.java │ │ │ ├── data │ │ │ │ ├── TestHoodieJavaPairRDD.java │ │ │ │ ├── TestHoodieJavaRDD.java │ │ │ │ ├── TrackingCloseableIterator.java │ │ │ │ └── partitioner │ │ │ │ │ └── TestConditionalRangePartitioner.java │ │ │ ├── execution │ │ │ │ ├── TestBoundedInMemoryExecutorInSpark.java │ │ │ │ ├── TestBoundedInMemoryQueue.java │ │ │ │ ├── TestDisruptorExecutionInSpark.java │ │ │ │ ├── TestDisruptorMessageQueue.java │ │ │ │ ├── TestSimpleExecutionInSpark.java │ │ │ │ └── bulkinsert │ │ │ │ │ └── TestRowCustomColumnsSortPartitioner.java │ │ │ ├── index │ │ │ │ ├── TestHoodieIndexConfigs.java │ │ │ │ ├── bloom │ │ │ │ │ ├── TestBloomIndexTagWithColStats.java │ │ │ │ │ ├── TestBucketizedBloomCheckPartitioner.java │ │ │ │ │ ├── TestHoodieBloomIndex.java │ │ │ │ │ ├── TestHoodieGlobalBloomIndex.java │ │ │ │ │ └── TestKeyRangeLookupTree.java │ │ │ │ ├── bucket │ │ │ │ │ └── TestHoodieSimpleBucketIndex.java │ │ │ │ └── expression │ │ │ │ │ └── TestHoodieSparkExpressionIndex.java │ │ │ ├── io │ │ │ │ ├── BaseTestHandle.java │ │ │ │ ├── KeyGeneratorForDataGeneratorRecords.java │ │ │ │ ├── TestHoodieDefaultMergeHandle.java │ │ │ │ ├── TestHoodieKeyLocationFetchHandle.java │ │ │ │ ├── TestHoodieTimelineArchiver.java │ │ │ │ ├── TestSparkIOUtils.java │ │ │ │ └── storage │ │ │ │ │ └── TestHoodieAvroFileWriterFactory.java │ │ │ ├── keygen │ │ │ │ ├── KeyGeneratorTestUtilities.java │ │ │ │ ├── MockUserProvidedKeyGenerator.java │ │ │ │ ├── TestComplexKeyGenerator.java │ │ │ │ ├── TestCustomKeyGenerator.java │ │ │ │ ├── TestGlobalDeleteRecordGenerator.java │ │ │ │ ├── TestNonpartitionedKeyGenerator.java │ │ │ │ ├── TestSimpleKeyGenerator.java │ │ │ │ ├── TestTimestampBasedKeyGenerator.java │ │ │ │ └── factory │ │ │ │ │ ├── TestCreateKeyGeneratorByTypeWithFactory.java │ │ │ │ │ └── TestHoodieSparkKeyGeneratorFactory.java │ │ │ ├── table │ │ │ │ ├── TestCleaner.java │ │ │ │ ├── TestConsistencyGuard.java │ │ │ │ ├── TestHoodieSparkTable.java │ │ │ │ ├── action │ │ │ │ │ ├── bootstrap │ │ │ │ │ │ └── TestBootstrapUtils.java │ │ │ │ │ ├── clean │ │ │ │ │ │ ├── TestCleanerInsertAndCleanByCommits.java │ │ │ │ │ │ └── TestCleanerInsertAndCleanByVersions.java │ │ │ │ │ ├── cluster │ │ │ │ │ │ ├── ClusteringTestUtils.java │ │ │ │ │ │ └── strategy │ │ │ │ │ │ │ ├── TestSparkBuildClusteringGroupsForPartition.java │ │ │ │ │ │ │ └── TestSparkClusteringPlanPartitionFilter.java │ │ │ │ │ ├── commit │ │ │ │ │ │ ├── TestCopyOnWriteActionExecutor.java │ │ │ │ │ │ ├── TestSparkMetadataTableFirstDeltaCommitActionExecutor.java │ │ │ │ │ │ ├── TestSparkMetadataTableUpsertPartitioner.java │ │ │ │ │ │ ├── TestSparkWriteHelper.java │ │ │ │ │ │ └── TestUpsertPartitioner.java │ │ │ │ │ ├── compact │ │ │ │ │ │ ├── CompactionTestBase.java │ │ │ │ │ │ └── strategy │ │ │ │ │ │ │ └── TestHoodieCompactionStrategy.java │ │ │ │ │ └── rollback │ │ │ │ │ │ ├── HoodieClientRollbackTestBase.java │ │ │ │ │ │ └── TestRollbackUtils.java │ │ │ │ ├── functional │ │ │ │ │ ├── TestCleanActionExecutor.java │ │ │ │ │ ├── TestCleanPlanExecutor.java │ │ │ │ │ ├── TestHoodieSparkCopyOnWriteTableArchiveWithReplace.java │ │ │ │ │ ├── TestHoodieSparkCopyOnWriteTableCleanAndArchiveWithTestFormat.java │ │ │ │ │ └── TestMarkerBasedRollbackStrategy.java │ │ │ │ ├── marker │ │ │ │ │ ├── TestDirectWriteMarkers.java │ │ │ │ │ ├── TestDirectWriteMarkersV1.java │ │ │ │ │ ├── TestTimelineServerBasedWriteMarkers.java │ │ │ │ │ ├── TestTimelineServerBasedWriteMarkersV1.java │ │ │ │ │ └── TestWriteMarkersBase.java │ │ │ │ └── upgrade │ │ │ │ │ ├── TestUpgradeDowngradeConcurrencyControl.java │ │ │ │ │ └── TestUpgradeDowngradeLegacy.java │ │ │ └── testutils │ │ │ │ ├── DisableOnSpark4Condition.java │ │ │ │ ├── DisabledOnSpark4.java │ │ │ │ ├── FunctionalTestHarness.java │ │ │ │ ├── HoodieCleanerTestBase.java │ │ │ │ ├── HoodieClientTestBase.java │ │ │ │ ├── HoodieClientTestUtils.java │ │ │ │ ├── HoodieSparkClientTestHarness.java │ │ │ │ ├── HoodieSparkDeleteRecordMerger.java │ │ │ │ ├── HoodieSparkWriteableTestTable.java │ │ │ │ ├── SparkClientFunctionalTestHarness.java │ │ │ │ ├── SparkRDDValidationUtils.java │ │ │ │ └── providers │ │ │ │ └── SparkProvider.java │ │ │ └── spark │ │ │ ├── TestHoodieSparkKryoRegistrar.java │ │ │ └── sql │ │ │ └── hudi │ │ │ └── execution │ │ │ └── TestRangeSampleSort.java │ │ ├── resources │ │ └── META-INF │ │ │ └── services │ │ │ └── org.apache.hudi.common.HoodieTableFormat │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ └── testutils │ │ │ └── SparkClientFunctionalTestHarnessScala.scala │ │ └── spark │ │ └── sql │ │ ├── TestHoodieUnsafeRowUtils.scala │ │ └── execution │ │ └── datasources │ │ └── parquet │ │ └── TestHoodieParquetReadSupport.scala └── pom.xml ├── hudi-common ├── pom.xml └── src │ ├── main │ ├── avro │ │ ├── HoodieArchivedMetaEntry.avsc │ │ ├── HoodieBootstrapFilePartitionInfo.avsc │ │ ├── HoodieBootstrapIndexInfo.avsc │ │ ├── HoodieBootstrapPartitionMetadata.avsc │ │ ├── HoodieCleanMetadata.avsc │ │ ├── HoodieCleanPartitionMetadata.avsc │ │ ├── HoodieCleanerPlan.avsc │ │ ├── HoodieClusteringGroup.avsc │ │ ├── HoodieClusteringPlan.avsc │ │ ├── HoodieClusteringStrategy.avsc │ │ ├── HoodieCommitMetadata.avsc │ │ ├── HoodieCompactionMetadata.avsc │ │ ├── HoodieCompactionOperation.avsc │ │ ├── HoodieCompactionStrategy.avsc │ │ ├── HoodieDeleteRecordList.avsc │ │ ├── HoodieFSPermission.avsc │ │ ├── HoodieFileStatus.avsc │ │ ├── HoodieIndexCommitMetadata.avsc │ │ ├── HoodieIndexPartitionInfo.avsc │ │ ├── HoodieIndexPlan.avsc │ │ ├── HoodieInstantInfo.avsc │ │ ├── HoodieLSMTimelineInstant.avsc │ │ ├── HoodieMergeArchiveFilePlan.avsc │ │ ├── HoodieMetadata.avsc │ │ ├── HoodiePath.avsc │ │ ├── HoodieReplaceCommitMetadata.avsc │ │ ├── HoodieRequestedReplaceMetadata.avsc │ │ ├── HoodieRestoreMetadata.avsc │ │ ├── HoodieRestorePlan.avsc │ │ ├── HoodieRollbackMetadata.avsc │ │ ├── HoodieRollbackPlan.avsc │ │ ├── HoodieSavePointMetadata.avsc │ │ └── HoodieSliceInfo.avsc │ └── java │ │ └── org │ │ └── apache │ │ ├── hudi │ │ ├── BaseHoodieTableFileIndex.java │ │ ├── ParquetAdapter.java │ │ ├── avro │ │ │ ├── AvroLogicalTypeEnum.java │ │ │ ├── AvroRecordContext.java │ │ │ ├── AvroRecordSerializer.java │ │ │ ├── AvroRecordSizeEstimator.java │ │ │ ├── AvroSchemaCache.java │ │ │ ├── AvroSchemaComparatorForRecordProjection.java │ │ │ ├── AvroSchemaComparatorForSchemaEvolution.java │ │ │ ├── AvroSchemaCompatibility.java │ │ │ ├── AvroSchemaUtils.java │ │ │ ├── ConvertingGenericData.java │ │ │ ├── GenericAvroSerializer.java │ │ │ ├── HoodieAvroReaderContext.java │ │ │ ├── HoodieAvroUtils.java │ │ │ ├── HoodieAvroWrapperUtils.java │ │ │ ├── HoodieBloomFilterWriteSupport.java │ │ │ ├── JoinedGenericRecord.java │ │ │ ├── JsonEncoder.java │ │ │ ├── MercifulJsonConverter.java │ │ │ └── processors │ │ │ │ ├── DateLogicalTypeProcessor.java │ │ │ │ ├── DecimalLogicalTypeProcessor.java │ │ │ │ ├── DurationLogicalTypeProcessor.java │ │ │ │ ├── EnumTypeProcessor.java │ │ │ │ ├── FixedTypeProcessor.java │ │ │ │ ├── JsonFieldProcessor.java │ │ │ │ ├── LocalTimestampMicroLogicalTypeProcessor.java │ │ │ │ ├── LocalTimestampMilliLogicalTypeProcessor.java │ │ │ │ ├── Parser.java │ │ │ │ ├── TimeLogicalTypeProcessor.java │ │ │ │ ├── TimeMicroLogicalTypeProcessor.java │ │ │ │ ├── TimeMilliLogicalTypeProcessor.java │ │ │ │ ├── TimestampMicroLogicalTypeProcessor.java │ │ │ │ └── TimestampMilliLogicalTypeProcessor.java │ │ ├── client │ │ │ └── transaction │ │ │ │ └── lock │ │ │ │ ├── InProcessLockProvider.java │ │ │ │ └── NoopLockProvider.java │ │ ├── common │ │ │ ├── HoodieCleanStat.java │ │ │ ├── HoodieJsonPayload.java │ │ │ ├── HoodiePendingRollbackInfo.java │ │ │ ├── HoodieRollbackStat.java │ │ │ ├── HoodieSchemaNotFoundException.java │ │ │ ├── HoodieTableFormat.java │ │ │ ├── NativeTableFormat.java │ │ │ ├── bloom │ │ │ │ ├── BloomFilter.java │ │ │ │ ├── BloomFilterFactory.java │ │ │ │ ├── BloomFilterTypeCode.java │ │ │ │ ├── BloomFilterUtils.java │ │ │ │ ├── HashFunction.java │ │ │ │ ├── HoodieDynamicBoundedBloomFilter.java │ │ │ │ ├── InternalBloomFilter.java │ │ │ │ ├── InternalDynamicBloomFilter.java │ │ │ │ ├── InternalFilter.java │ │ │ │ ├── Key.java │ │ │ │ └── SimpleBloomFilter.java │ │ │ ├── bootstrap │ │ │ │ ├── FileStatusUtils.java │ │ │ │ └── index │ │ │ │ │ ├── BootstrapIndex.java │ │ │ │ │ ├── NoOpBootstrapIndex.java │ │ │ │ │ └── hfile │ │ │ │ │ ├── HFileBootstrapIndex.java │ │ │ │ │ ├── HFileBootstrapIndexReader.java │ │ │ │ │ └── HFileBootstrapIndexWriter.java │ │ │ ├── config │ │ │ │ ├── AdvancedConfig.java │ │ │ │ ├── ConfigClassProperty.java │ │ │ │ ├── ConfigGroups.java │ │ │ │ ├── ConfigProperty.java │ │ │ │ ├── EnumDescription.java │ │ │ │ ├── EnumFieldDescription.java │ │ │ │ ├── HoodieCommonConfig.java │ │ │ │ ├── HoodieConfig.java │ │ │ │ ├── HoodieIndexingConfig.java │ │ │ │ ├── HoodieMemoryConfig.java │ │ │ │ ├── HoodieMetadataConfig.java │ │ │ │ ├── HoodieMetaserverConfig.java │ │ │ │ ├── HoodieReaderConfig.java │ │ │ │ ├── HoodieStorageConfig.java │ │ │ │ ├── HoodieTableServiceManagerConfig.java │ │ │ │ ├── HoodieTimeGeneratorConfig.java │ │ │ │ ├── LockConfiguration.java │ │ │ │ ├── OrderedProperties.java │ │ │ │ ├── PropertiesConfig.java │ │ │ │ ├── RecordMergeMode.java │ │ │ │ ├── SerializableSchema.java │ │ │ │ ├── TimestampKeyGeneratorConfig.java │ │ │ │ └── TypedProperties.java │ │ │ ├── conflict │ │ │ │ └── detection │ │ │ │ │ ├── DirectMarkerBasedDetectionStrategy.java │ │ │ │ │ ├── EarlyConflictDetectionStrategy.java │ │ │ │ │ └── TimelineServerBasedDetectionStrategy.java │ │ │ ├── data │ │ │ │ ├── HoodieAccumulator.java │ │ │ │ ├── HoodieAtomicLongAccumulator.java │ │ │ │ ├── HoodieBaseListData.java │ │ │ │ ├── HoodieData.java │ │ │ │ ├── HoodieListData.java │ │ │ │ ├── HoodieListPairData.java │ │ │ │ └── HoodiePairData.java │ │ │ ├── engine │ │ │ │ ├── AvroReaderContextFactory.java │ │ │ │ ├── EngineProperty.java │ │ │ │ ├── EngineType.java │ │ │ │ ├── HoodieEngineContext.java │ │ │ │ ├── HoodieLocalEngineContext.java │ │ │ │ ├── HoodieReaderContext.java │ │ │ │ ├── LocalTaskContextSupplier.java │ │ │ │ ├── ReaderContextFactory.java │ │ │ │ ├── RecordContext.java │ │ │ │ └── TaskContextSupplier.java │ │ │ ├── fs │ │ │ │ ├── ConsistencyGuardConfig.java │ │ │ │ ├── FSUtils.java │ │ │ │ ├── FailSafeConsistencyGuard.java │ │ │ │ ├── FileSystemRetryConfig.java │ │ │ │ ├── NoOpConsistencyGuard.java │ │ │ │ ├── OptimisticConsistencyGuard.java │ │ │ │ ├── SizeAwareDataInputStream.java │ │ │ │ └── SizeAwareDataOutputStream.java │ │ │ ├── function │ │ │ │ ├── FunctionWrapper.java │ │ │ │ ├── SerializableBiFunction.java │ │ │ │ ├── SerializableConsumer.java │ │ │ │ ├── SerializableFunction.java │ │ │ │ ├── SerializableFunctionUnchecked.java │ │ │ │ ├── SerializablePairFlatMapFunction.java │ │ │ │ ├── SerializablePairFunction.java │ │ │ │ ├── SerializablePairPredicate.java │ │ │ │ ├── SerializableSupplier.java │ │ │ │ └── ThrowingConsumer.java │ │ │ ├── heartbeat │ │ │ │ └── HoodieHeartbeatUtils.java │ │ │ ├── lock │ │ │ │ ├── LockProvider.java │ │ │ │ └── LockState.java │ │ │ ├── model │ │ │ │ ├── AWSDmsAvroPayload.java │ │ │ │ ├── ActionType.java │ │ │ │ ├── BaseAvroPayload.java │ │ │ │ ├── BaseFile.java │ │ │ │ ├── BootstrapBaseFileMapping.java │ │ │ │ ├── BootstrapFileMapping.java │ │ │ │ ├── BootstrapIndexType.java │ │ │ │ ├── CleanFileInfo.java │ │ │ │ ├── ClusteringGroupInfo.java │ │ │ │ ├── ClusteringOperation.java │ │ │ │ ├── CompactionOperation.java │ │ │ │ ├── ConsistentHashingNode.java │ │ │ │ ├── DefaultHoodieRecordPayload.java │ │ │ │ ├── DeleteRecord.java │ │ │ │ ├── EmptyHoodieRecordPayload.java │ │ │ │ ├── EventTimeAvroPayload.java │ │ │ │ ├── FileSlice.java │ │ │ │ ├── HoodieArchivedLogFile.java │ │ │ │ ├── HoodieAvroIndexedRecord.java │ │ │ │ ├── HoodieAvroPayload.java │ │ │ │ ├── HoodieAvroRecord.java │ │ │ │ ├── HoodieAvroRecordMerger.java │ │ │ │ ├── HoodieBaseFile.java │ │ │ │ ├── HoodieCleaningPolicy.java │ │ │ │ ├── HoodieCommitMetadata.java │ │ │ │ ├── HoodieConsistentHashingMetadata.java │ │ │ │ ├── HoodieDeltaWriteStat.java │ │ │ │ ├── HoodieEmptyRecord.java │ │ │ │ ├── HoodieFailedWritesCleaningPolicy.java │ │ │ │ ├── HoodieFileFormat.java │ │ │ │ ├── HoodieFileGroup.java │ │ │ │ ├── HoodieFileGroupId.java │ │ │ │ ├── HoodieIndexDefinition.java │ │ │ │ ├── HoodieIndexMetadata.java │ │ │ │ ├── HoodieKey.java │ │ │ │ ├── HoodieLSMTimelineManifest.java │ │ │ │ ├── HoodieLogFile.java │ │ │ │ ├── HoodieMetadataWrapper.java │ │ │ │ ├── HoodieOperation.java │ │ │ │ ├── HoodiePartitionMetadata.java │ │ │ │ ├── HoodiePayloadProps.java │ │ │ │ ├── HoodiePreCombineAvroRecordMerger.java │ │ │ │ ├── HoodieRecord.java │ │ │ │ ├── HoodieRecordCompatibilityInterface.java │ │ │ │ ├── HoodieRecordDelegate.java │ │ │ │ ├── HoodieRecordGlobalLocation.java │ │ │ │ ├── HoodieRecordLocation.java │ │ │ │ ├── HoodieRecordMerger.java │ │ │ │ ├── HoodieRecordPayload.java │ │ │ │ ├── HoodieReplaceCommitMetadata.java │ │ │ │ ├── HoodieRollingStat.java │ │ │ │ ├── HoodieRollingStatMetadata.java │ │ │ │ ├── HoodieSyncTableStrategy.java │ │ │ │ ├── HoodieTableQueryType.java │ │ │ │ ├── HoodieTableType.java │ │ │ │ ├── HoodieTimelineTimeZone.java │ │ │ │ ├── HoodieWriteStat.java │ │ │ │ ├── IOType.java │ │ │ │ ├── MetadataValues.java │ │ │ │ ├── OperationModeAwareness.java │ │ │ │ ├── OverwriteNonDefaultsWithLatestAvroPayload.java │ │ │ │ ├── OverwriteWithLatestAvroPayload.java │ │ │ │ ├── OverwriteWithLatestMerger.java │ │ │ │ ├── PartialUpdateAvroPayload.java │ │ │ │ ├── PartitionBucketIndexHashingConfig.java │ │ │ │ ├── RewriteAvroPayload.java │ │ │ │ ├── SerializableIndexedRecord.java │ │ │ │ ├── TableServiceType.java │ │ │ │ ├── WriteConcurrencyMode.java │ │ │ │ ├── WriteOperationType.java │ │ │ │ └── debezium │ │ │ │ │ ├── AbstractDebeziumAvroPayload.java │ │ │ │ │ ├── DebeziumConstants.java │ │ │ │ │ ├── MySqlDebeziumAvroPayload.java │ │ │ │ │ └── PostgresDebeziumAvroPayload.java │ │ │ ├── schema │ │ │ │ ├── HoodieFieldOrder.java │ │ │ │ ├── HoodieJsonProperties.java │ │ │ │ ├── HoodieSchema.java │ │ │ │ ├── HoodieSchemaCache.java │ │ │ │ ├── HoodieSchemaCompatibility.java │ │ │ │ ├── HoodieSchemaField.java │ │ │ │ ├── HoodieSchemaType.java │ │ │ │ └── HoodieSchemaUtils.java │ │ │ ├── serialization │ │ │ │ ├── CustomSerializer.java │ │ │ │ ├── DefaultSerializer.java │ │ │ │ ├── HoodieFileGroupSerializer.java │ │ │ │ ├── HoodieFileSliceSerializer.java │ │ │ │ └── RecordSerializer.java │ │ │ ├── table │ │ │ │ ├── HoodieTableConfig.java │ │ │ │ ├── HoodieTableMetaClient.java │ │ │ │ ├── HoodieTableVersion.java │ │ │ │ ├── PartialUpdateMode.java │ │ │ │ ├── PartitionPathParser.java │ │ │ │ ├── TableSchemaResolver.java │ │ │ │ ├── cdc │ │ │ │ │ ├── HoodieCDCExtractor.java │ │ │ │ │ ├── HoodieCDCFileSplit.java │ │ │ │ │ ├── HoodieCDCInferenceCase.java │ │ │ │ │ ├── HoodieCDCOperation.java │ │ │ │ │ ├── HoodieCDCSupplementalLoggingMode.java │ │ │ │ │ └── HoodieCDCUtils.java │ │ │ │ ├── checkpoint │ │ │ │ │ ├── Checkpoint.java │ │ │ │ │ ├── CheckpointUtils.java │ │ │ │ │ ├── HoodieIncrSourceCheckpointValUtils.java │ │ │ │ │ ├── StreamerCheckpointV1.java │ │ │ │ │ ├── StreamerCheckpointV2.java │ │ │ │ │ └── UnresolvedStreamerCheckpointBasedOnCfg.java │ │ │ │ ├── log │ │ │ │ │ ├── AbstractHoodieLogRecordScanner.java │ │ │ │ │ ├── AppendResult.java │ │ │ │ │ ├── BaseHoodieLogRecordReader.java │ │ │ │ │ ├── FullKeySpec.java │ │ │ │ │ ├── HoodieCDCLogRecordIterator.java │ │ │ │ │ ├── HoodieLogBlockMetadataScanner.java │ │ │ │ │ ├── HoodieLogFileReader.java │ │ │ │ │ ├── HoodieLogFormat.java │ │ │ │ │ ├── HoodieLogFormatReader.java │ │ │ │ │ ├── HoodieLogFormatReverseReader.java │ │ │ │ │ ├── HoodieLogFormatVersion.java │ │ │ │ │ ├── HoodieMergedLogRecordReader.java │ │ │ │ │ ├── HoodieMergedLogRecordScanner.java │ │ │ │ │ ├── HoodieUnMergedLogRecordScanner.java │ │ │ │ │ ├── InstantRange.java │ │ │ │ │ ├── KeySpec.java │ │ │ │ │ ├── LogFileCreationCallback.java │ │ │ │ │ ├── LogReaderUtils.java │ │ │ │ │ ├── PrefixKeySpec.java │ │ │ │ │ └── block │ │ │ │ │ │ ├── HoodieAvroDataBlock.java │ │ │ │ │ │ ├── HoodieAvroDataBlockVersion.java │ │ │ │ │ │ ├── HoodieCDCDataBlock.java │ │ │ │ │ │ ├── HoodieCommandBlock.java │ │ │ │ │ │ ├── HoodieCommandBlockVersion.java │ │ │ │ │ │ ├── HoodieCorruptBlock.java │ │ │ │ │ │ ├── HoodieDataBlock.java │ │ │ │ │ │ ├── HoodieDeleteBlock.java │ │ │ │ │ │ ├── HoodieDeleteBlockVersion.java │ │ │ │ │ │ ├── HoodieHFileDataBlock.java │ │ │ │ │ │ ├── HoodieLogBlock.java │ │ │ │ │ │ ├── HoodieLogBlockVersion.java │ │ │ │ │ │ └── HoodieParquetDataBlock.java │ │ │ │ ├── marker │ │ │ │ │ ├── MarkerOperation.java │ │ │ │ │ └── MarkerType.java │ │ │ │ ├── read │ │ │ │ │ ├── BaseFileUpdateCallback.java │ │ │ │ │ ├── BufferedRecord.java │ │ │ │ │ ├── BufferedRecordConverter.java │ │ │ │ │ ├── BufferedRecordMerger.java │ │ │ │ │ ├── BufferedRecordMergerFactory.java │ │ │ │ │ ├── BufferedRecordSerializer.java │ │ │ │ │ ├── BufferedRecords.java │ │ │ │ │ ├── DeleteContext.java │ │ │ │ │ ├── FileGroupReaderSchemaHandler.java │ │ │ │ │ ├── HoodieFileGroupReader.java │ │ │ │ │ ├── HoodieReadStats.java │ │ │ │ │ ├── IncrementalQueryAnalyzer.java │ │ │ │ │ ├── InputSplit.java │ │ │ │ │ ├── IteratorMode.java │ │ │ │ │ ├── ParquetRowIndexBasedSchemaHandler.java │ │ │ │ │ ├── PartialUpdateHandler.java │ │ │ │ │ ├── ReaderParameters.java │ │ │ │ │ ├── UpdateProcessor.java │ │ │ │ │ └── buffer │ │ │ │ │ │ ├── DefaultFileGroupRecordBufferLoader.java │ │ │ │ │ │ ├── FileGroupRecordBuffer.java │ │ │ │ │ │ ├── FileGroupRecordBufferLoader.java │ │ │ │ │ │ ├── HoodieFileGroupRecordBuffer.java │ │ │ │ │ │ ├── KeyBasedFileGroupRecordBuffer.java │ │ │ │ │ │ ├── LogScanningRecordBufferLoader.java │ │ │ │ │ │ ├── PositionBasedFileGroupRecordBuffer.java │ │ │ │ │ │ ├── ReusableFileGroupRecordBufferLoader.java │ │ │ │ │ │ ├── ReusableKeyBasedRecordBuffer.java │ │ │ │ │ │ ├── SortedKeyBasedFileGroupRecordBuffer.java │ │ │ │ │ │ ├── StreamingFileGroupRecordBufferLoader.java │ │ │ │ │ │ └── UnmergedFileGroupRecordBuffer.java │ │ │ │ ├── timeline │ │ │ │ │ ├── ActiveAction.java │ │ │ │ │ ├── ActiveTimelineUtils.java │ │ │ │ │ ├── ArchivedTimelineLoader.java │ │ │ │ │ ├── BaseHoodieTimeline.java │ │ │ │ │ ├── CommitMetadataSerDe.java │ │ │ │ │ ├── CompletionTimeQueryView.java │ │ │ │ │ ├── HoodieActiveTimeline.java │ │ │ │ │ ├── HoodieArchivedTimeline.java │ │ │ │ │ ├── HoodieInstant.java │ │ │ │ │ ├── HoodieInstantReader.java │ │ │ │ │ ├── HoodieInstantTimeGenerator.java │ │ │ │ │ ├── HoodieTimeline.java │ │ │ │ │ ├── InstantComparator.java │ │ │ │ │ ├── InstantComparison.java │ │ │ │ │ ├── InstantFileNameGenerator.java │ │ │ │ │ ├── InstantFileNameParser.java │ │ │ │ │ ├── InstantGenerator.java │ │ │ │ │ ├── LSMTimeline.java │ │ │ │ │ ├── MetadataConversionUtils.java │ │ │ │ │ ├── SkewAdjustingTimeGenerator.java │ │ │ │ │ ├── TableFormatCompletionAction.java │ │ │ │ │ ├── TimeGenerator.java │ │ │ │ │ ├── TimeGeneratorBase.java │ │ │ │ │ ├── TimeGeneratorType.java │ │ │ │ │ ├── TimeGenerators.java │ │ │ │ │ ├── TimelineDiffHelper.java │ │ │ │ │ ├── TimelineFactory.java │ │ │ │ │ ├── TimelineLayout.java │ │ │ │ │ ├── TimelineMetadataUtils.java │ │ │ │ │ ├── TimelinePathProvider.java │ │ │ │ │ ├── TimelineUtils.java │ │ │ │ │ ├── dto │ │ │ │ │ │ ├── BaseFileDTO.java │ │ │ │ │ │ ├── ClusteringOpDTO.java │ │ │ │ │ │ ├── CompactionOpDTO.java │ │ │ │ │ │ ├── DTOUtils.java │ │ │ │ │ │ ├── FileGroupDTO.java │ │ │ │ │ │ ├── FilePathDTO.java │ │ │ │ │ │ ├── FileSliceDTO.java │ │ │ │ │ │ ├── FileStatusDTO.java │ │ │ │ │ │ ├── InstantDTO.java │ │ │ │ │ │ ├── LogFileDTO.java │ │ │ │ │ │ └── TimelineDTO.java │ │ │ │ │ └── versioning │ │ │ │ │ │ ├── AbstractMigratorBase.java │ │ │ │ │ │ ├── DefaultCommitMetadataSerDe.java │ │ │ │ │ │ ├── DefaultInstantComparator.java │ │ │ │ │ │ ├── DefaultInstantFileNameGenerator.java │ │ │ │ │ │ ├── DefaultInstantFileNameParser.java │ │ │ │ │ │ ├── DefaultInstantGenerator.java │ │ │ │ │ │ ├── DefaultTimelineFactory.java │ │ │ │ │ │ ├── MetadataMigrator.java │ │ │ │ │ │ ├── TimelineLayoutVersion.java │ │ │ │ │ │ ├── VersionMigrator.java │ │ │ │ │ │ ├── clean │ │ │ │ │ │ ├── CleanMetadataMigrator.java │ │ │ │ │ │ ├── CleanMetadataV1MigrationHandler.java │ │ │ │ │ │ ├── CleanMetadataV2MigrationHandler.java │ │ │ │ │ │ ├── CleanPlanMigrator.java │ │ │ │ │ │ ├── CleanPlanV1MigrationHandler.java │ │ │ │ │ │ └── CleanPlanV2MigrationHandler.java │ │ │ │ │ │ ├── common │ │ │ │ │ │ └── InstantComparators.java │ │ │ │ │ │ ├── compaction │ │ │ │ │ │ ├── CompactionPlanMigrator.java │ │ │ │ │ │ ├── CompactionV1MigrationHandler.java │ │ │ │ │ │ └── CompactionV2MigrationHandler.java │ │ │ │ │ │ ├── v1 │ │ │ │ │ │ ├── ActiveTimelineV1.java │ │ │ │ │ │ ├── ArchivedTimelineLoaderV1.java │ │ │ │ │ │ ├── ArchivedTimelineV1.java │ │ │ │ │ │ ├── BaseTimelineV1.java │ │ │ │ │ │ ├── CommitMetadataSerDeV1.java │ │ │ │ │ │ ├── CompletionTimeQueryViewV1.java │ │ │ │ │ │ ├── InstantComparatorV1.java │ │ │ │ │ │ ├── InstantFileNameGeneratorV1.java │ │ │ │ │ │ ├── InstantFileNameParserV1.java │ │ │ │ │ │ ├── InstantGeneratorV1.java │ │ │ │ │ │ ├── TimelinePathProviderV1.java │ │ │ │ │ │ └── TimelineV1Factory.java │ │ │ │ │ │ └── v2 │ │ │ │ │ │ ├── ActiveTimelineV2.java │ │ │ │ │ │ ├── ArchivedTimelineLoaderV2.java │ │ │ │ │ │ ├── ArchivedTimelineV2.java │ │ │ │ │ │ ├── BaseTimelineV2.java │ │ │ │ │ │ ├── CommitMetadataSerDeV2.java │ │ │ │ │ │ ├── CompletionTimeQueryViewV2.java │ │ │ │ │ │ ├── InstantComparatorV2.java │ │ │ │ │ │ ├── InstantFileNameGeneratorV2.java │ │ │ │ │ │ ├── InstantFileNameParserV2.java │ │ │ │ │ │ ├── InstantGeneratorV2.java │ │ │ │ │ │ ├── TimelinePathProviderV2.java │ │ │ │ │ │ └── TimelineV2Factory.java │ │ │ │ └── view │ │ │ │ │ ├── AbstractTableFileSystemView.java │ │ │ │ │ ├── FileSystemViewManager.java │ │ │ │ │ ├── FileSystemViewStorageConfig.java │ │ │ │ │ ├── FileSystemViewStorageType.java │ │ │ │ │ ├── HoodieFileGroupSizeEstimator.java │ │ │ │ │ ├── HoodieTableFileSystemView.java │ │ │ │ │ ├── HoodieTablePreCommitFileSystemView.java │ │ │ │ │ ├── IncrementalTimelineSyncFileSystemView.java │ │ │ │ │ ├── NoOpTableMetadata.java │ │ │ │ │ ├── PriorityBasedFileSystemView.java │ │ │ │ │ ├── RemoteHoodieTableFileSystemView.java │ │ │ │ │ ├── RocksDbBasedFileSystemView.java │ │ │ │ │ ├── SpillableMapBasedFileSystemView.java │ │ │ │ │ ├── SyncableFileSystemView.java │ │ │ │ │ └── TableFileSystemView.java │ │ │ └── util │ │ │ │ ├── ArchivedInstantReadSchemas.java │ │ │ │ ├── AvroJavaTypeConverter.java │ │ │ │ ├── Base64CodecUtil.java │ │ │ │ ├── BinaryUtil.java │ │ │ │ ├── BufferedRandomAccessFile.java │ │ │ │ ├── CleanerUtils.java │ │ │ │ ├── ClusteringUtils.java │ │ │ │ ├── CollectionUtils.java │ │ │ │ ├── CommitUtils.java │ │ │ │ ├── CompactionUtils.java │ │ │ │ ├── ConfigUtils.java │ │ │ │ ├── CustomizedThreadFactory.java │ │ │ │ ├── DateTimeUtils.java │ │ │ │ ├── DefaultJavaTypeConverter.java │ │ │ │ ├── DefaultSizeEstimator.java │ │ │ │ ├── Either.java │ │ │ │ ├── ExternalFilePathUtil.java │ │ │ │ ├── FileFormatUtils.java │ │ │ │ ├── Functions.java │ │ │ │ ├── FutureUtils.java │ │ │ │ ├── HFileUtils.java │ │ │ │ ├── HoodieCommonKryoRegistrar.java │ │ │ │ ├── HoodieDataUtils.java │ │ │ │ ├── HoodieRecordSizeEstimator.java │ │ │ │ ├── HoodieRecordUtils.java │ │ │ │ ├── HoodieTableConfigUtils.java │ │ │ │ ├── InternalSchemaCache.java │ │ │ │ ├── JavaTypeConverter.java │ │ │ │ ├── JsonUtils.java │ │ │ │ ├── LocalAvroSchemaCache.java │ │ │ │ ├── LogicalClock.java │ │ │ │ ├── MapUtils.java │ │ │ │ ├── MarkerUtils.java │ │ │ │ ├── NetworkUtils.java │ │ │ │ ├── NumericUtils.java │ │ │ │ ├── ObjectSizeCalculator.java │ │ │ │ ├── OrderingValues.java │ │ │ │ ├── PartitionPathEncodeUtils.java │ │ │ │ ├── RateLimiter.java │ │ │ │ ├── RemotePartitionHelper.java │ │ │ │ ├── RocksDBSchemaHelper.java │ │ │ │ ├── SerializationUtils.java │ │ │ │ ├── SizeEstimator.java │ │ │ │ ├── SortUtils.java │ │ │ │ ├── SpillableMapUtils.java │ │ │ │ ├── SystemClock.java │ │ │ │ ├── TablePathUtils.java │ │ │ │ ├── ThreadUtils.java │ │ │ │ ├── TypeUtils.java │ │ │ │ ├── VisibleForTesting.java │ │ │ │ ├── collection │ │ │ │ ├── ArrayComparable.java │ │ │ │ ├── ArrayUtils.java │ │ │ │ ├── BitCaskDiskMap.java │ │ │ │ ├── CachingIterator.java │ │ │ │ ├── ClosableIterator.java │ │ │ │ ├── ClosableSortedDedupingIterator.java │ │ │ │ ├── ClosableSortingIterator.java │ │ │ │ ├── CloseableFilterIterator.java │ │ │ │ ├── CloseableMappingIterator.java │ │ │ │ ├── DiskMap.java │ │ │ │ ├── EmptyIterator.java │ │ │ │ ├── ExternalSpillableMap.java │ │ │ │ ├── FilterIterator.java │ │ │ │ ├── FlatLists.java │ │ │ │ ├── FlatteningIterator.java │ │ │ │ ├── ImmutablePair.java │ │ │ │ ├── ImmutableTriple.java │ │ │ │ ├── KeyFilteringIterable.java │ │ │ │ ├── LazyFileIterable.java │ │ │ │ ├── MappingIterator.java │ │ │ │ ├── Pair.java │ │ │ │ ├── RocksDBBasedMap.java │ │ │ │ ├── RocksDBDAO.java │ │ │ │ ├── RocksDbDiskMap.java │ │ │ │ ├── Triple.java │ │ │ │ └── Tuple3.java │ │ │ │ ├── hash │ │ │ │ ├── BucketIndexUtil.java │ │ │ │ ├── ColumnIndexID.java │ │ │ │ ├── FileIndexID.java │ │ │ │ ├── Hash.java │ │ │ │ ├── HashID.java │ │ │ │ ├── HoodieIndexID.java │ │ │ │ ├── JenkinsHash.java │ │ │ │ ├── MurmurHash.java │ │ │ │ └── PartitionIndexID.java │ │ │ │ ├── jvm │ │ │ │ ├── HotSpotMemoryLayoutSpecification32bit.java │ │ │ │ ├── HotSpotMemoryLayoutSpecification64bit.java │ │ │ │ ├── HotSpotMemoryLayoutSpecification64bitCompressed.java │ │ │ │ ├── MemoryLayoutSpecification.java │ │ │ │ ├── OpenJ9MemoryLayoutSpecification32bit.java │ │ │ │ ├── OpenJ9MemoryLayoutSpecification64bit.java │ │ │ │ └── OpenJ9MemoryLayoutSpecification64bitCompressed.java │ │ │ │ └── queue │ │ │ │ ├── BaseHoodieQueueBasedExecutor.java │ │ │ │ ├── BoundedInMemoryExecutor.java │ │ │ │ ├── BoundedInMemoryQueue.java │ │ │ │ ├── DisruptorExecutor.java │ │ │ │ ├── DisruptorMessageQueue.java │ │ │ │ ├── DisruptorWaitStrategyType.java │ │ │ │ ├── ExecutorType.java │ │ │ │ ├── FunctionBasedQueueProducer.java │ │ │ │ ├── HoodieConsumer.java │ │ │ │ ├── HoodieExecutor.java │ │ │ │ ├── HoodieMessageQueue.java │ │ │ │ ├── HoodieProducer.java │ │ │ │ ├── IteratorBasedQueueProducer.java │ │ │ │ ├── SimpleExecutor.java │ │ │ │ └── WaitStrategyFactory.java │ │ ├── config │ │ │ └── metrics │ │ │ │ ├── HoodieMetricsCloudWatchConfig.java │ │ │ │ ├── HoodieMetricsConfig.java │ │ │ │ ├── HoodieMetricsDatadogConfig.java │ │ │ │ ├── HoodieMetricsGraphiteConfig.java │ │ │ │ ├── HoodieMetricsJmxConfig.java │ │ │ │ ├── HoodieMetricsM3Config.java │ │ │ │ └── HoodieMetricsPrometheusConfig.java │ │ ├── exception │ │ │ ├── CorruptedLogFileException.java │ │ │ ├── ExceptionUtil.java │ │ │ ├── HoodieAvroSchemaException.java │ │ │ ├── HoodieCatalogException.java │ │ │ ├── HoodieClusteringException.java │ │ │ ├── HoodieCompactException.java │ │ │ ├── HoodieCorruptedDataException.java │ │ │ ├── HoodieDebeziumAvroPayloadException.java │ │ │ ├── HoodieDuplicateDataFileDetectedException.java │ │ │ ├── HoodieDuplicateKeyException.java │ │ │ ├── HoodieEarlyConflictDetectionException.java │ │ │ ├── HoodieHeartbeatException.java │ │ │ ├── HoodieIncrementalPathNotFoundException.java │ │ │ ├── HoodieIndexException.java │ │ │ ├── HoodieJsonConversionException.java │ │ │ ├── HoodieJsonToAvroConversionException.java │ │ │ ├── HoodieKeyException.java │ │ │ ├── HoodieLockException.java │ │ │ ├── HoodieLogCompactException.java │ │ │ ├── HoodieMetaSyncException.java │ │ │ ├── HoodieMetadataException.java │ │ │ ├── HoodieMetadataIndexException.java │ │ │ ├── HoodieNotSupportedException.java │ │ │ ├── HoodieNullSchemaTypeException.java │ │ │ ├── HoodieRecordCreationException.java │ │ │ ├── HoodieRecordMissingException.java │ │ │ ├── HoodieRemoteException.java │ │ │ ├── HoodieSchemaEvolutionConflictException.java │ │ │ ├── HoodieSecondaryIndexException.java │ │ │ ├── HoodieSerializationException.java │ │ │ ├── HoodieTimeTravelException.java │ │ │ ├── HoodieValidationException.java │ │ │ ├── HoodieWriteConflictException.java │ │ │ ├── InvalidHoodieFileNameException.java │ │ │ ├── InvalidHoodiePathException.java │ │ │ ├── InvalidTableException.java │ │ │ ├── InvalidUnionTypeException.java │ │ │ ├── MetadataNotFoundException.java │ │ │ ├── MissingSchemaFieldException.java │ │ │ ├── SchemaBackwardsCompatibilityException.java │ │ │ ├── SchemaCompatibilityException.java │ │ │ └── TableNotFoundException.java │ │ ├── expression │ │ │ ├── ArrayData.java │ │ │ ├── BinaryExpression.java │ │ │ ├── BindVisitor.java │ │ │ ├── BoundReference.java │ │ │ ├── Comparators.java │ │ │ ├── Expression.java │ │ │ ├── ExpressionVisitor.java │ │ │ ├── LeafExpression.java │ │ │ ├── Literal.java │ │ │ ├── NameReference.java │ │ │ ├── PartialBindVisitor.java │ │ │ ├── Predicate.java │ │ │ ├── Predicates.java │ │ │ └── StructLike.java │ │ ├── index │ │ │ ├── expression │ │ │ │ └── HoodieExpressionIndex.java │ │ │ ├── record │ │ │ │ └── HoodieRecordIndex.java │ │ │ └── secondary │ │ │ │ ├── HoodieSecondaryIndex.java │ │ │ │ ├── SecondaryIndexManager.java │ │ │ │ ├── SecondaryIndexType.java │ │ │ │ └── SecondaryIndexUtils.java │ │ ├── internal │ │ │ └── schema │ │ │ │ ├── HoodieSchemaException.java │ │ │ │ ├── InternalSchema.java │ │ │ │ ├── InternalSchemaBuilder.java │ │ │ │ ├── Type.java │ │ │ │ ├── Types.java │ │ │ │ ├── action │ │ │ │ ├── InternalSchemaChangeApplier.java │ │ │ │ ├── InternalSchemaMerger.java │ │ │ │ ├── TableChange.java │ │ │ │ ├── TableChanges.java │ │ │ │ └── TableChangesHelper.java │ │ │ │ ├── convert │ │ │ │ └── InternalSchemaConverter.java │ │ │ │ ├── io │ │ │ │ ├── AbstractInternalSchemaStorageManager.java │ │ │ │ └── FileBasedInternalSchemaStorageManager.java │ │ │ │ ├── utils │ │ │ │ ├── AvroSchemaEvolutionUtils.java │ │ │ │ ├── Conversions.java │ │ │ │ ├── InternalSchemaUtils.java │ │ │ │ ├── SchemaChangeUtils.java │ │ │ │ └── SerDeHelper.java │ │ │ │ └── visitor │ │ │ │ ├── InternalSchemaVisitor.java │ │ │ │ ├── NameToIDVisitor.java │ │ │ │ └── NameToPositionVisitor.java │ │ ├── io │ │ │ └── storage │ │ │ │ ├── ColumnRangeMetadataProvider.java │ │ │ │ ├── HFileReaderFactory.java │ │ │ │ ├── HoodieAvroBootstrapFileReader.java │ │ │ │ ├── HoodieAvroFileReader.java │ │ │ │ ├── HoodieAvroFileWriter.java │ │ │ │ ├── HoodieAvroHFileReaderImplBase.java │ │ │ │ ├── HoodieBootstrapFileReader.java │ │ │ │ ├── HoodieBootstrapRecordIterator.java │ │ │ │ ├── HoodieFileBinaryCopier.java │ │ │ │ ├── HoodieFileReader.java │ │ │ │ ├── HoodieFileReaderFactory.java │ │ │ │ ├── HoodieFileWriter.java │ │ │ │ ├── HoodieFileWriterFactory.java │ │ │ │ ├── HoodieHFileConfig.java │ │ │ │ ├── HoodieIOFactory.java │ │ │ │ ├── HoodieNativeAvroHFileReader.java │ │ │ │ ├── HoodieOrcConfig.java │ │ │ │ └── HoodieSeekingFileReader.java │ │ ├── keygen │ │ │ ├── BaseKeyGenerator.java │ │ │ ├── KeyGenerator.java │ │ │ ├── KeyGeneratorInterface.java │ │ │ └── constant │ │ │ │ ├── KeyGeneratorOptions.java │ │ │ │ └── KeyGeneratorType.java │ │ ├── metadata │ │ │ ├── AbstractHoodieTableMetadata.java │ │ │ ├── BaseFileRecordParsingUtils.java │ │ │ ├── BaseTableMetadata.java │ │ │ ├── BloomFilterIndexRawKey.java │ │ │ ├── ColumnStatsIndexPrefixRawKey.java │ │ │ ├── ColumnStatsIndexRawKey.java │ │ │ ├── EmptyHoodieRecordPayloadWithPartition.java │ │ │ ├── FileSystemBackedTableMetadata.java │ │ │ ├── FilesIndexRawKey.java │ │ │ ├── HoodieBackedTableMetadata.java │ │ │ ├── HoodieDataCleanupManager.java │ │ │ ├── HoodieIndexVersion.java │ │ │ ├── HoodieMetadataMetrics.java │ │ │ ├── HoodieMetadataPayload.java │ │ │ ├── HoodieTableMetadata.java │ │ │ ├── HoodieTableMetadataUtil.java │ │ │ ├── MetadataPartitionType.java │ │ │ ├── NativeTableMetadataFactory.java │ │ │ ├── RawKey.java │ │ │ ├── RecordIndexRawKey.java │ │ │ ├── SecondaryIndexKeyUtils.java │ │ │ ├── SecondaryIndexPrefixRawKey.java │ │ │ └── TableMetadataFactory.java │ │ ├── metrics │ │ │ ├── ConsoleMetricsReporter.java │ │ │ ├── HoodieGauge.java │ │ │ ├── InMemoryMetricsReporter.java │ │ │ ├── JmxMetricsReporter.java │ │ │ ├── JmxReporterServer.java │ │ │ ├── MetricUtils.java │ │ │ ├── Metrics.java │ │ │ ├── MetricsGraphiteReporter.java │ │ │ ├── MetricsReporter.java │ │ │ ├── MetricsReporterFactory.java │ │ │ ├── MetricsReporterType.java │ │ │ ├── Slf4jMetricsReporter.java │ │ │ ├── custom │ │ │ │ └── CustomizableMetricsReporter.java │ │ │ ├── datadog │ │ │ │ ├── DatadogHttpClient.java │ │ │ │ ├── DatadogMetricsReporter.java │ │ │ │ └── DatadogReporter.java │ │ │ ├── m3 │ │ │ │ ├── M3MetricsReporter.java │ │ │ │ └── M3ScopeReporterAdaptor.java │ │ │ ├── prometheus │ │ │ │ ├── PrometheusReporter.java │ │ │ │ ├── PushGatewayMetricsReporter.java │ │ │ │ └── PushGatewayReporter.java │ │ │ └── userdefined │ │ │ │ └── AbstractUserDefinedMetricsReporter.java │ │ ├── parquet │ │ │ └── io │ │ │ │ └── ByteBufferBackedInputFile.java │ │ ├── stats │ │ │ ├── HoodieColumnRangeMetadata.java │ │ │ ├── ValueMetadata.java │ │ │ └── ValueType.java │ │ ├── storage │ │ │ └── HoodieStorageUtils.java │ │ ├── timeline │ │ │ ├── TimelineServiceClient.java │ │ │ └── TimelineServiceClientBase.java │ │ └── util │ │ │ ├── HoodieFileMetadataMerger.java │ │ │ ├── Lazy.java │ │ │ └── Transient.java │ │ └── parquet │ │ └── schema │ │ ├── AvroSchemaRepair.java │ │ ├── LogicalTypeParquetAdapter.java │ │ └── OriginalTypeParquetAdapter.java │ └── test │ ├── java │ └── org │ │ └── apache │ │ ├── hudi │ │ ├── BaseHoodieTableFileIndexTest.java │ │ ├── avro │ │ │ ├── AvroSchemaTestUtils.java │ │ │ ├── MercifulJsonConverterTestBase.java │ │ │ ├── TestAvroJavaTypeConverter.java │ │ │ ├── TestAvroRecordContext.java │ │ │ ├── TestAvroRecordSizeEstimator.java │ │ │ ├── TestAvroSchemaComparatorForSchemaEvolution.java │ │ │ ├── TestAvroSchemaUtils.java │ │ │ ├── TestHoodieAvroReaderContext.java │ │ │ ├── TestHoodieAvroUtils.java │ │ │ └── TestMercifulJsonConverter.java │ │ ├── common │ │ │ ├── TestRegistry.java │ │ │ ├── bloom │ │ │ │ └── TestInternalDynamicBloomFilter.java │ │ │ ├── config │ │ │ │ ├── HoodieTestFakeConfig.java │ │ │ │ ├── TestConfigProperty.java │ │ │ │ ├── TestHoodieConfig.java │ │ │ │ ├── TestHoodieMetadataConfig.java │ │ │ │ ├── TestHoodieStorageConfig.java │ │ │ │ └── TestHoodieTimeGeneratorConfig.java │ │ │ ├── data │ │ │ │ ├── CloseValidationIterator.java │ │ │ │ ├── TestHoodieListData.java │ │ │ │ └── TestHoodieListDataPairData.java │ │ │ ├── engine │ │ │ │ └── TestDefaultJavaTypeConverter.java │ │ │ ├── fs │ │ │ │ └── TestSizeAwareDataInputStream.java │ │ │ ├── model │ │ │ │ ├── TestAWSDmsAvroPayload.java │ │ │ │ ├── TestDefaultHoodieRecordPayload.java │ │ │ │ ├── TestFileSlice.java │ │ │ │ ├── TestHoodieBaseFile.java │ │ │ │ ├── TestHoodieCommitMetadata.java │ │ │ │ ├── TestHoodieConsistentHashingMetadata.java │ │ │ │ ├── TestHoodieDeltaWriteStat.java │ │ │ │ ├── TestHoodieIndexMetadata.java │ │ │ │ ├── TestHoodieLSMTimelineManifest.java │ │ │ │ ├── TestHoodieLogFile.java │ │ │ │ ├── TestHoodieRecordGlobalLocation.java │ │ │ │ ├── TestHoodieReplaceCommitMetadata.java │ │ │ │ ├── TestHoodieWriteStat.java │ │ │ │ ├── TestOverwriteNonDefaultsWithLatestAvroPayload.java │ │ │ │ ├── TestOverwriteWithLatestAvroPayload.java │ │ │ │ ├── TestPartialUpdateAvroPayload.java │ │ │ │ ├── TestSerializableIndexRecord.java │ │ │ │ └── debezium │ │ │ │ │ ├── TestMySqlDebeziumAvroPayload.java │ │ │ │ │ └── TestPostgresDebeziumAvroPayload.java │ │ │ ├── properties │ │ │ │ ├── TestOrderedProperties.java │ │ │ │ └── TestTypedProperties.java │ │ │ ├── schema │ │ │ │ ├── HoodieSchemaTestUtils.java │ │ │ │ ├── TestHoodieJsonProperties.java │ │ │ │ ├── TestHoodieSchema.java │ │ │ │ ├── TestHoodieSchemaCompatibility.java │ │ │ │ ├── TestHoodieSchemaField.java │ │ │ │ ├── TestHoodieSchemaType.java │ │ │ │ └── TestHoodieSchemaUtils.java │ │ │ ├── serialization │ │ │ │ ├── TestBufferedRecordSerializer.java │ │ │ │ ├── TestDefaultSerializer.java │ │ │ │ ├── TestHoodieFileGroupSerializer.java │ │ │ │ └── TestHoodieFileSliceSerializer.java │ │ │ ├── table │ │ │ │ ├── TestPartitionPathParser.java │ │ │ │ ├── checkpoint │ │ │ │ │ ├── TestCheckpointUtils.java │ │ │ │ │ └── TestHoodieIncrSourceCheckpointValUtils.java │ │ │ │ ├── log │ │ │ │ │ ├── TestHoodieLogFormatVersion.java │ │ │ │ │ ├── TestHoodieMergedLogRecordReader.java │ │ │ │ │ └── block │ │ │ │ │ │ ├── TestHoodieAvroDataBlock.java │ │ │ │ │ │ └── TestHoodieLogBlock.java │ │ │ │ ├── read │ │ │ │ │ ├── CustomPayloadForTesting.java │ │ │ │ │ ├── SchemaHandlerTestBase.java │ │ │ │ │ ├── TestBufferedRecords.java │ │ │ │ │ ├── TestFileGroupReaderSchemaHandler.java │ │ │ │ │ ├── TestHoodieFileGroupReaderBase.java │ │ │ │ │ ├── TestParquetRowIndexBasedSchemaHandler.java │ │ │ │ │ ├── TestPartialUpdateHandler.java │ │ │ │ │ ├── TestUpdateProcessor.java │ │ │ │ │ └── buffer │ │ │ │ │ │ ├── BaseTestFileGroupRecordBuffer.java │ │ │ │ │ │ ├── TestFileGroupRecordBuffer.java │ │ │ │ │ │ ├── TestFileGroupRecordBufferLoader.java │ │ │ │ │ │ ├── TestKeyBasedFileGroupRecordBuffer.java │ │ │ │ │ │ ├── TestRecord.java │ │ │ │ │ │ ├── TestReusableKeyBasedRecordBuffer.java │ │ │ │ │ │ ├── TestSortedKeyBasedFileGroupRecordBuffer.java │ │ │ │ │ │ └── TestStreamingKeyBasedFileGroupRecordBuffer.java │ │ │ │ ├── timeline │ │ │ │ │ ├── TestHoodieInstantTimeGenerator.java │ │ │ │ │ ├── TestInstantComparators.java │ │ │ │ │ ├── TestLSMTimeline.java │ │ │ │ │ ├── TestTimelineLayout.java │ │ │ │ │ └── versioning │ │ │ │ │ │ ├── BaseTestCommitMetadataSerDe.java │ │ │ │ │ │ ├── v1 │ │ │ │ │ │ └── TestCommitMetadataSerDeV1.java │ │ │ │ │ │ └── v2 │ │ │ │ │ │ └── TestCommitMetadataSerDeV2.java │ │ │ │ └── view │ │ │ │ │ ├── TestHoodieFileGroupSizeEstimator.java │ │ │ │ │ └── TestPriorityBasedFileSystemView.java │ │ │ ├── testutils │ │ │ │ ├── Assertions.java │ │ │ │ ├── AvroBinaryTestPayload.java │ │ │ │ ├── CheckedFunction.java │ │ │ │ ├── CompactionTestUtils.java │ │ │ │ ├── FileCreateUtils.java │ │ │ │ ├── FileCreateUtilsBase.java │ │ │ │ ├── FileCreateUtilsLegacy.java │ │ │ │ ├── HadoopMapRedUtils.java │ │ │ │ ├── HoodieAdaptablePayloadDataGenerator.java │ │ │ │ ├── HoodieTestDataGenerator.java │ │ │ │ ├── HoodieTestUtils.java │ │ │ │ ├── InProcessTimeGenerator.java │ │ │ │ ├── JavaTestUtils.java │ │ │ │ ├── MockHoodieTimeline.java │ │ │ │ ├── OrderingFieldsTestUtils.java │ │ │ │ ├── RawTripTestPayload.java │ │ │ │ ├── SampleTestRecord.java │ │ │ │ ├── SchemaTestUtil.java │ │ │ │ ├── SpillableMapTestUtils.java │ │ │ │ ├── Transformations.java │ │ │ │ ├── minicluster │ │ │ │ │ └── ZookeeperTestService.java │ │ │ │ └── reader │ │ │ │ │ ├── DataGenerationPlan.java │ │ │ │ │ ├── HoodieFileSliceTestUtils.java │ │ │ │ │ └── HoodieRecordTestPayload.java │ │ │ └── util │ │ │ │ ├── TestBase64CodecUtil.java │ │ │ │ ├── TestBaseFileUtils.java │ │ │ │ ├── TestBinaryUtil.java │ │ │ │ ├── TestCleanerUtils.java │ │ │ │ ├── TestCollectionUtils.java │ │ │ │ ├── TestConfigUtils.java │ │ │ │ ├── TestCustomizedThreadFactory.java │ │ │ │ ├── TestDateTimeUtils.java │ │ │ │ ├── TestHFileUtils.java │ │ │ │ ├── TestHoodieRecordUtils.java │ │ │ │ ├── TestHoodieTimer.java │ │ │ │ ├── TestLocalAvroSchemaCache.java │ │ │ │ ├── TestMapUtils.java │ │ │ │ ├── TestNumericUtils.java │ │ │ │ ├── TestObjectSizeCalculator.java │ │ │ │ ├── TestRatelimiter.java │ │ │ │ ├── TestReflectionUtils.java │ │ │ │ ├── TestRetryHelper.java │ │ │ │ ├── TestSerializableSchema.java │ │ │ │ ├── TestSerializationUtils.java │ │ │ │ ├── TestSortUtils.java │ │ │ │ ├── TestSystemClock.java │ │ │ │ ├── collection │ │ │ │ ├── TestClosableSortedDedupingIterator.java │ │ │ │ ├── TestFilterIterator.java │ │ │ │ ├── TestIterators.java │ │ │ │ ├── TestRocksDBDAO.java │ │ │ │ └── TestSortingIterator.java │ │ │ │ ├── hash │ │ │ │ ├── TestBucketIndexUtil.java │ │ │ │ └── TestHashID.java │ │ │ │ └── io │ │ │ │ └── TestByteBufferBackedInputStream.java │ │ ├── config │ │ │ └── metrics │ │ │ │ └── TestHoodieMetricsConfig.java │ │ ├── expression │ │ │ ├── TestPartialBindVisitor.java │ │ │ └── TestPredicates.java │ │ ├── internal │ │ │ └── schema │ │ │ │ ├── TestSerDeHelper.java │ │ │ │ ├── action │ │ │ │ ├── TestMergeSchema.java │ │ │ │ └── TestTableChanges.java │ │ │ │ ├── convert │ │ │ │ └── TestInternalSchemaConverter.java │ │ │ │ └── utils │ │ │ │ ├── TestAvroSchemaEvolutionUtils.java │ │ │ │ └── TestInternalSchemaUtils.java │ │ ├── io │ │ │ └── storage │ │ │ │ ├── TestHFileReaderFactory.java │ │ │ │ ├── TestHoodieFileMetadataMerger.java │ │ │ │ └── TestHoodieNativeAvroHFileReader.java │ │ ├── keygen │ │ │ ├── TestKeyGenerator.java │ │ │ └── constant │ │ │ │ └── TestKeyGeneratorType.java │ │ ├── metadata │ │ │ ├── HoodieBackedTestDelayedTableMetadata.java │ │ │ ├── TestHoodieBackedTableMetadataBuildPredicate.java │ │ │ ├── TestHoodieBackedTableMetadataDataCleanup.java │ │ │ ├── TestHoodieDataCleanupManager.java │ │ │ ├── TestHoodieIndexVersion.java │ │ │ ├── TestHoodieTableMetadataUtil.java │ │ │ ├── TestMetadataPartitionType.java │ │ │ └── TestSecondaryIndexKeyUtils.java │ │ ├── metrics │ │ │ ├── TestMetrics.java │ │ │ └── TestMetricsReporterFactory.java │ │ ├── stats │ │ │ ├── TestValueMetadata.java │ │ │ └── TestValueType.java │ │ ├── tableformat │ │ │ ├── TestActiveTimeline.java │ │ │ ├── TestFormatBackedTableMetadata.java │ │ │ ├── TestTableFormat.java │ │ │ ├── TestTableMetadataFactory.java │ │ │ └── TestTimelineFactory.java │ │ └── timeline │ │ │ └── TestTimelineServiceClient.java │ │ └── parquet │ │ └── schema │ │ └── TestAvroSchemaRepair.java │ └── resources │ ├── adaptable-payload.avsc │ ├── avro-schema-evo │ ├── schema-allshapes-A.txt │ └── schema-allshapes-B.txt │ ├── complex-schema-evolved.avsc │ ├── complex-schema-evolved.data │ ├── complex-test-evolved.avsc │ ├── complex.schema.avsc │ ├── date-type-invalid.avsc │ ├── date-type.avsc │ ├── decimal-logical-type-fixed-type.avsc │ ├── decimal-logical-type-invalid.avsc │ ├── decimal-logical-type-zero-scale.avsc │ ├── decimal-logical-type.avsc │ ├── duration-logical-type-invalid.avsc │ ├── duration-logical-type.avsc │ ├── exampleEvolvedSchema.avsc │ ├── exampleEvolvedSchemaChangeOrder.avsc │ ├── exampleEvolvedSchemaColumnRequire.avsc │ ├── exampleEvolvedSchemaColumnType.avsc │ ├── exampleEvolvedSchemaDeleteColumn.avsc │ ├── exampleSchema.avsc │ ├── exampleSchemaWithMetaFields.avsc │ ├── exampleSchemaWithUDT.avsc │ ├── file-group-reader │ └── bootstrap_data.zip │ ├── format │ ├── bloom-filter │ │ └── hadoop │ │ │ ├── all_10000.keys.data │ │ │ ├── dynamic_1000_000001_jenkins_5000.bf.data │ │ │ ├── dynamic_1000_000001_murmur_5000.bf.data │ │ │ ├── dynamic_200_000001_murmur_1000.bf.data │ │ │ ├── simple_10000_000001_murmur.bf.data │ │ │ ├── simple_1000_000001_murmur.bf.data │ │ │ ├── simple_200_000001_murmur.bf.data │ │ │ ├── simple_5000_000001_jenkins.bf.data │ │ │ └── simple_5000_000001_murmur.bf.data │ ├── delete-block-v2-content-10-records.data │ ├── expected_record_positions.data │ └── record_positions_header_v3.data │ ├── hash │ ├── magic_input.txt │ ├── xxhash_BITS_128_for_magic_input.txt │ ├── xxhash_BITS_32_for_magic_input.txt │ └── xxhash_BITS_64_for_magic_input.txt │ ├── local-timestamp-logical-type.avsc │ ├── local-timestamp-micros-logical-type.avsc │ ├── local-timestamp-millis-logical-type.avsc │ ├── nullRight.avsc │ ├── nullWrong.avsc │ ├── old-version.commit │ ├── props │ └── test.properties │ ├── sample.data │ ├── simple-test-doced.avsc │ ├── simple-test-evolved-compatible.avsc │ ├── simple-test-evolved.avsc │ ├── simple-test.avsc │ ├── source_evolved.avsc │ ├── time-logical-type.avsc │ ├── timestamp-logical-type.avsc │ ├── timestamp-logical-type2.avsc │ ├── timestamp-test-evolved.avsc │ └── uuid-logical-type.avsc ├── hudi-examples ├── README.md ├── bin │ ├── custom-streamer-example.sh │ ├── dfs-streamer-example.sh │ ├── hudi-streamer │ └── kafka-streamer-example.sh ├── hudi-examples-common │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── examples │ │ └── common │ │ └── HoodieExampleDataGenerator.java ├── hudi-examples-dbt │ ├── .gitignore │ ├── README.md │ ├── dbt_project.yml │ └── models │ │ ├── example │ │ ├── hudi_insert_overwrite_table.sql │ │ ├── hudi_insert_table.sql │ │ ├── hudi_upsert_partitioned_cow_table.sql │ │ ├── hudi_upsert_partitioned_mor_table.sql │ │ ├── hudi_upsert_table.sql │ │ └── schema.yml │ │ └── example_cdc │ │ ├── profile_changes.sql │ │ ├── profiles.sql │ │ ├── raw_updates.sql │ │ └── schema.yml ├── hudi-examples-flink │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── hudi │ │ │ │ └── examples │ │ │ │ └── quickstart │ │ │ │ ├── HoodieFlinkQuickstart.java │ │ │ │ ├── factory │ │ │ │ ├── CollectSinkTableFactory.java │ │ │ │ └── ContinuousFileSourceFactory.java │ │ │ │ ├── source │ │ │ │ └── ContinuousFileSource.java │ │ │ │ └── utils │ │ │ │ ├── QuickstartConfigurations.java │ │ │ │ └── SchemaBuilder.java │ │ └── resources │ │ │ ├── META-INF │ │ │ └── services │ │ │ │ └── org.apache.flink.table.factories.Factory │ │ │ └── source-file.json │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── examples │ │ │ └── quickstart │ │ │ ├── TestHoodieFlinkQuickstart.java │ │ │ └── TestQuickstartData.java │ │ └── resources │ │ └── META-INF │ │ └── services │ │ └── org.apache.flink.table.factories.Factory ├── hudi-examples-java │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── examples │ │ └── java │ │ └── HoodieJavaWriteClientExample.java ├── hudi-examples-k8s │ ├── Dockerfile │ ├── README.md │ ├── config │ │ ├── hadoop │ │ │ └── core-site.xml │ │ └── k8s │ │ │ ├── flink-deployment.yaml │ │ │ └── minio-standalone.yaml │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── examples │ │ └── k8s │ │ └── quickstart │ │ ├── HudiDataStreamWriter.java │ │ └── utils │ │ └── DataGenerator.java ├── hudi-examples-spark │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── hudi │ │ │ │ └── examples │ │ │ │ ├── common │ │ │ │ ├── ExampleDataSchemaProvider.java │ │ │ │ ├── HoodieExampleSparkUtils.java │ │ │ │ ├── IdentityTransformer.java │ │ │ │ └── RandomJsonSource.java │ │ │ │ ├── quickstart │ │ │ │ └── HoodieSparkQuickstart.java │ │ │ │ └── spark │ │ │ │ ├── HoodieSparkBootstrapExample.java │ │ │ │ └── HoodieWriteClientExample.java │ │ ├── resources │ │ │ └── streamer-config │ │ │ │ ├── dfs │ │ │ │ └── source-file.json │ │ │ │ └── kafka │ │ │ │ └── kafka-source.properties │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── examples │ │ │ └── spark │ │ │ ├── HoodieDataSourceExample.scala │ │ │ └── HoodieMorCompactionJob.scala │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── examples │ │ │ └── quickstart │ │ │ └── TestHoodieSparkQuickstart.java │ │ └── python │ │ ├── HoodiePySparkQuickstart.py │ │ └── README.md └── pom.xml ├── hudi-flink-datasource ├── hudi-flink │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── hudi │ │ │ │ ├── configuration │ │ │ │ ├── FlinkOptions.java │ │ │ │ ├── HadoopConfigurations.java │ │ │ │ ├── OptionsInference.java │ │ │ │ └── OptionsResolver.java │ │ │ │ ├── metrics │ │ │ │ ├── FlinkClusteringMetrics.java │ │ │ │ ├── FlinkCompactionMetrics.java │ │ │ │ ├── FlinkStreamReadMetrics.java │ │ │ │ ├── FlinkStreamWriteMetrics.java │ │ │ │ ├── FlinkWriteMetrics.java │ │ │ │ └── HoodieFlinkMetrics.java │ │ │ │ ├── schema │ │ │ │ ├── FilebasedSchemaProvider.java │ │ │ │ ├── SchemaProvider.java │ │ │ │ └── SchemaRegistryProvider.java │ │ │ │ ├── sink │ │ │ │ ├── CleanFunction.java │ │ │ │ ├── StreamWriteFunction.java │ │ │ │ ├── StreamWriteOperator.java │ │ │ │ ├── StreamWriteOperatorCoordinator.java │ │ │ │ ├── append │ │ │ │ │ ├── AppendWriteFunction.java │ │ │ │ │ ├── AppendWriteFunctionWithBufferSort.java │ │ │ │ │ ├── AppendWriteFunctionWithRateLimit.java │ │ │ │ │ ├── AppendWriteFunctions.java │ │ │ │ │ └── AppendWriteOperator.java │ │ │ │ ├── bootstrap │ │ │ │ │ ├── BootstrapOperator.java │ │ │ │ │ ├── aggregate │ │ │ │ │ │ ├── BootstrapAccumulator.java │ │ │ │ │ │ └── BootstrapAggFunction.java │ │ │ │ │ └── batch │ │ │ │ │ │ └── BatchBootstrapOperator.java │ │ │ │ ├── bucket │ │ │ │ │ ├── BucketBulkInsertWriterHelper.java │ │ │ │ │ ├── BucketStreamWriteFunction.java │ │ │ │ │ ├── BucketStreamWriteOperator.java │ │ │ │ │ ├── ConsistentBucketAssignFunction.java │ │ │ │ │ └── ConsistentBucketStreamWriteFunction.java │ │ │ │ ├── buffer │ │ │ │ │ ├── BufferSizeDetector.java │ │ │ │ │ ├── HeapMemorySegmentPool.java │ │ │ │ │ ├── MemorySegmentPoolFactory.java │ │ │ │ │ ├── RowDataBucket.java │ │ │ │ │ └── TotalSizeTracer.java │ │ │ │ ├── bulk │ │ │ │ │ ├── AutoRowDataKeyGen.java │ │ │ │ │ ├── BulkInsertWriteFunction.java │ │ │ │ │ ├── BulkInsertWriteOperator.java │ │ │ │ │ ├── BulkInsertWriterHelper.java │ │ │ │ │ ├── RowDataKeyGen.java │ │ │ │ │ ├── RowDataKeyGens.java │ │ │ │ │ ├── WriterHelpers.java │ │ │ │ │ └── sort │ │ │ │ │ │ ├── SortOperator.java │ │ │ │ │ │ └── SortOperatorGen.java │ │ │ │ ├── clustering │ │ │ │ │ ├── ClusteringCommitEvent.java │ │ │ │ │ ├── ClusteringCommitSink.java │ │ │ │ │ ├── ClusteringOperator.java │ │ │ │ │ ├── ClusteringPlanEvent.java │ │ │ │ │ ├── ClusteringPlanOperator.java │ │ │ │ │ ├── ClusteringPlanSourceFunction.java │ │ │ │ │ ├── FlinkClusteringConfig.java │ │ │ │ │ ├── HoodieFlinkClusteringJob.java │ │ │ │ │ └── update │ │ │ │ │ │ └── strategy │ │ │ │ │ │ ├── ConsistentBucketUpdateStrategy.java │ │ │ │ │ │ └── FlinkConsistentBucketUpdateStrategy.java │ │ │ │ ├── common │ │ │ │ │ ├── AbstractStreamWriteFunction.java │ │ │ │ │ ├── AbstractWriteFunction.java │ │ │ │ │ ├── AbstractWriteOperator.java │ │ │ │ │ └── WriteOperatorFactory.java │ │ │ │ ├── compact │ │ │ │ │ ├── CompactOperator.java │ │ │ │ │ ├── CompactionCommitEvent.java │ │ │ │ │ ├── CompactionCommitSink.java │ │ │ │ │ ├── CompactionPlanEvent.java │ │ │ │ │ ├── CompactionPlanOperator.java │ │ │ │ │ ├── CompactionPlanSourceFunction.java │ │ │ │ │ ├── FlinkCompactionConfig.java │ │ │ │ │ ├── HoodieFlinkCompactor.java │ │ │ │ │ └── strategy │ │ │ │ │ │ ├── CompactionPlanStrategies.java │ │ │ │ │ │ └── CompactionPlanStrategy.java │ │ │ │ ├── event │ │ │ │ │ ├── CommitAckEvent.java │ │ │ │ │ ├── Correspondent.java │ │ │ │ │ └── WriteMetadataEvent.java │ │ │ │ ├── exception │ │ │ │ │ └── MemoryPagesExhaustedException.java │ │ │ │ ├── overwrite │ │ │ │ │ └── PartitionOverwriteMode.java │ │ │ │ ├── partitioner │ │ │ │ │ ├── BucketAssignFunction.java │ │ │ │ │ ├── BucketAssigner.java │ │ │ │ │ ├── BucketAssigners.java │ │ │ │ │ ├── BucketIndexPartitioner.java │ │ │ │ │ ├── GroupedInsertPartitioner.java │ │ │ │ │ └── profile │ │ │ │ │ │ ├── DeltaWriteProfile.java │ │ │ │ │ │ ├── EmptyWriteProfile.java │ │ │ │ │ │ ├── WriteProfile.java │ │ │ │ │ │ └── WriteProfiles.java │ │ │ │ ├── transform │ │ │ │ │ ├── ChainedTransformer.java │ │ │ │ │ ├── RecordConverter.java │ │ │ │ │ ├── RowDataToHoodieFunction.java │ │ │ │ │ ├── RowDataToHoodieFunctionWithRateLimit.java │ │ │ │ │ ├── RowDataToHoodieFunctions.java │ │ │ │ │ └── Transformer.java │ │ │ │ ├── utils │ │ │ │ │ ├── BufferUtils.java │ │ │ │ │ ├── CommitGuard.java │ │ │ │ │ ├── CoordinationResponseSerDe.java │ │ │ │ │ ├── EventBuffers.java │ │ │ │ │ ├── ExplicitClassloaderThreadFactory.java │ │ │ │ │ ├── HiveSyncContext.java │ │ │ │ │ ├── HoodieFlinkInternalRowTypeInfo.java │ │ │ │ │ ├── NaturalOrderKeyComputer.java │ │ │ │ │ ├── NaturalOrderRecordComparator.java │ │ │ │ │ ├── NonThrownExecutor.java │ │ │ │ │ ├── Pipelines.java │ │ │ │ │ └── TimeWait.java │ │ │ │ └── v2 │ │ │ │ │ ├── CleanFunctionV2.java │ │ │ │ │ ├── HoodieSink.java │ │ │ │ │ ├── clustering │ │ │ │ │ └── ClusteringCommitSinkV2.java │ │ │ │ │ ├── compact │ │ │ │ │ └── CompactionCommitSinkV2.java │ │ │ │ │ └── utils │ │ │ │ │ └── PipelinesV2.java │ │ │ │ ├── source │ │ │ │ ├── ExpressionEvaluators.java │ │ │ │ ├── ExpressionPredicates.java │ │ │ │ ├── FileIndex.java │ │ │ │ ├── IncrementalInputSplits.java │ │ │ │ ├── StreamReadMonitoringFunction.java │ │ │ │ ├── StreamReadOperator.java │ │ │ │ ├── prune │ │ │ │ │ ├── ColumnStatsProbe.java │ │ │ │ │ ├── PartitionBucketIdFunc.java │ │ │ │ │ ├── PartitionPruners.java │ │ │ │ │ └── PrimaryKeyPruners.java │ │ │ │ ├── rebalance │ │ │ │ │ ├── partitioner │ │ │ │ │ │ ├── StreamReadAppendPartitioner.java │ │ │ │ │ │ └── StreamReadBucketIndexPartitioner.java │ │ │ │ │ └── selector │ │ │ │ │ │ ├── StreamReadAppendKeySelector.java │ │ │ │ │ │ └── StreamReadBucketIndexKeySelector.java │ │ │ │ ├── split │ │ │ │ │ ├── HoodieSourceSplit.java │ │ │ │ │ ├── HoodieSourceSplitState.java │ │ │ │ │ ├── HoodieSourceSplitStatus.java │ │ │ │ │ ├── SerializableComparator.java │ │ │ │ │ └── SplitRequestEvent.java │ │ │ │ └── stats │ │ │ │ │ ├── ColumnStats.java │ │ │ │ │ ├── ColumnStatsIndex.java │ │ │ │ │ ├── ColumnStatsSchemas.java │ │ │ │ │ ├── FileStatsIndex.java │ │ │ │ │ └── PartitionStatsIndex.java │ │ │ │ ├── streamer │ │ │ │ ├── FlinkStreamerConfig.java │ │ │ │ └── HoodieFlinkStreamer.java │ │ │ │ ├── table │ │ │ │ ├── HoodieTableFactory.java │ │ │ │ ├── HoodieTableSink.java │ │ │ │ ├── HoodieTableSource.java │ │ │ │ ├── catalog │ │ │ │ │ ├── CatalogOptions.java │ │ │ │ │ ├── HiveSchemaUtils.java │ │ │ │ │ ├── HoodieCatalog.java │ │ │ │ │ ├── HoodieCatalogFactory.java │ │ │ │ │ ├── HoodieCatalogUtil.java │ │ │ │ │ ├── HoodieHiveCatalog.java │ │ │ │ │ ├── TableOptionProperties.java │ │ │ │ │ └── TypeInfoLogicalTypeVisitor.java │ │ │ │ ├── format │ │ │ │ │ ├── CastMap.java │ │ │ │ │ ├── FilePathUtils.java │ │ │ │ │ ├── FlinkReaderContextFactory.java │ │ │ │ │ ├── FlinkRowDataReaderContext.java │ │ │ │ │ ├── FormatUtils.java │ │ │ │ │ ├── HoodieFlinkIOFactory.java │ │ │ │ │ ├── HoodieRowDataFileReaderFactory.java │ │ │ │ │ ├── HoodieRowDataParquetReader.java │ │ │ │ │ ├── InternalSchemaManager.java │ │ │ │ │ ├── ParquetSplitRecordIterator.java │ │ │ │ │ ├── RecordIterators.java │ │ │ │ │ ├── SchemaEvolvedRecordIterator.java │ │ │ │ │ ├── cdc │ │ │ │ │ │ ├── CdcInputFormat.java │ │ │ │ │ │ └── CdcInputSplit.java │ │ │ │ │ ├── cow │ │ │ │ │ │ └── CopyOnWriteInputFormat.java │ │ │ │ │ └── mor │ │ │ │ │ │ ├── MergeOnReadInputFormat.java │ │ │ │ │ │ ├── MergeOnReadInputSplit.java │ │ │ │ │ │ └── MergeOnReadTableState.java │ │ │ │ └── lookup │ │ │ │ │ ├── HoodieLookupFunction.java │ │ │ │ │ └── HoodieLookupTableReader.java │ │ │ │ └── util │ │ │ │ ├── ChangelogModes.java │ │ │ │ ├── ClientIds.java │ │ │ │ ├── ClusteringUtil.java │ │ │ │ ├── CompactionUtil.java │ │ │ │ ├── DataModificationInfos.java │ │ │ │ ├── DataTypeUtils.java │ │ │ │ ├── ExpressionUtils.java │ │ │ │ ├── FlinkStateBackendConverter.java │ │ │ │ ├── FlinkTables.java │ │ │ │ ├── FlinkTaskContextSupplier.java │ │ │ │ ├── FlinkWriteClients.java │ │ │ │ ├── HoodiePipeline.java │ │ │ │ ├── ImplicitTypeConverter.java │ │ │ │ ├── InputFormats.java │ │ │ │ ├── JsonDeserializationFunction.java │ │ │ │ ├── RowDataCastProjection.java │ │ │ │ ├── RowDataProjection.java │ │ │ │ ├── SerializableSchema.java │ │ │ │ ├── StreamerUtil.java │ │ │ │ └── ViewStorageProperties.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── services │ │ │ └── org.apache.flink.table.factories.Factory │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── configuration │ │ │ ├── TestOptionsInference.java │ │ │ └── TestOptionsResolver.java │ │ │ ├── sink │ │ │ ├── ITTestDataStreamV2Write.java │ │ │ ├── ITTestDataStreamWrite.java │ │ │ ├── TestStreamWriteOperatorCoordinator.java │ │ │ ├── TestWriteCopyOnWrite.java │ │ │ ├── TestWriteMergeOnRead.java │ │ │ ├── TestWriteMergeOnReadWithCompact.java │ │ │ ├── TestWriterWithPartitionTTl.java │ │ │ ├── append │ │ │ │ ├── ITTestAppendWriteFunctionWithBufferSort.java │ │ │ │ └── TestAppendWriteFunction.java │ │ │ ├── bucket │ │ │ │ ├── ITTestBucketStreamWrite.java │ │ │ │ └── ITTestConsistentBucketStreamWrite.java │ │ │ ├── bulk │ │ │ │ ├── TestBulkInsertWriteHelper.java │ │ │ │ └── TestRowDataKeyGens.java │ │ │ ├── cluster │ │ │ │ ├── ClusteringCommitTestSink.java │ │ │ │ ├── ITTestFlinkConsistentHashingClustering.java │ │ │ │ └── ITTestHoodieFlinkClustering.java │ │ │ ├── compact │ │ │ │ ├── CompactionCommitTestSink.java │ │ │ │ ├── ITTestHoodieFlinkCompactor.java │ │ │ │ ├── TestCompactionPlanStrategy.java │ │ │ │ └── TestCustomSerDe.java │ │ │ ├── partitioner │ │ │ │ ├── TestBucketAssigner.java │ │ │ │ └── TestGroupedInsertPartitioner.java │ │ │ └── utils │ │ │ │ ├── BucketStreamWriteFunctionWrapper.java │ │ │ │ ├── BulkInsertFunctionWrapper.java │ │ │ │ ├── ClusteringFunctionWrapper.java │ │ │ │ ├── CompactFunctionWrapper.java │ │ │ │ ├── ConsistentBucketStreamWriteFunctionWrapper.java │ │ │ │ ├── InsertFunctionWrapper.java │ │ │ │ ├── MockCoordinatorExecutor.java │ │ │ │ ├── MockCorrespondent.java │ │ │ │ ├── MockCorrespondentWithTimeout.java │ │ │ │ ├── MockKeyedStateStore.java │ │ │ │ ├── MockMapState.java │ │ │ │ ├── MockOperatorStateStore.java │ │ │ │ ├── MockStateInitializationContext.java │ │ │ │ ├── MockStreamingRuntimeContext.java │ │ │ │ ├── MockSubtaskGateway.java │ │ │ │ ├── MockValueState.java │ │ │ │ ├── RecordsCollector.java │ │ │ │ ├── StreamWriteFunctionWrapper.java │ │ │ │ ├── TestFunctionWrapper.java │ │ │ │ ├── TestHiveSyncContext.java │ │ │ │ ├── TestWriteBase.java │ │ │ │ └── keyedstate │ │ │ │ ├── MockKeyContext.java │ │ │ │ ├── MockKeyedListState.java │ │ │ │ ├── MockKeyedMapState.java │ │ │ │ └── MockKeyedValueState.java │ │ │ ├── source │ │ │ ├── TestExpressionEvaluators.java │ │ │ ├── TestExpressionPredicates.java │ │ │ ├── TestFileIndex.java │ │ │ ├── TestIncrementalInputSplits.java │ │ │ ├── TestStreamReadMonitoringFunction.java │ │ │ ├── TestStreamReadOperator.java │ │ │ ├── prune │ │ │ │ └── TestColumnStatsProbe.java │ │ │ └── stats │ │ │ │ └── TestColumnStatsIndex.java │ │ │ ├── table │ │ │ ├── ITTestHoodieDataSource.java │ │ │ ├── ITTestSchemaEvolution.java │ │ │ ├── ITTestSchemaEvolutionBySQL.java │ │ │ ├── ITTestSchemaEvolutionBySQLWithDFSCatalog.java │ │ │ ├── ITTestSchemaEvolutionBySQLWithHMSCatalog.java │ │ │ ├── TestHoodieFileGroupReaderOnFlink.java │ │ │ ├── TestHoodieTableFactory.java │ │ │ ├── TestHoodieTableSource.java │ │ │ ├── catalog │ │ │ │ ├── BaseTestHoodieCatalog.java │ │ │ │ ├── HoodieCatalogTestUtils.java │ │ │ │ ├── TestHoodieCatalog.java │ │ │ │ ├── TestHoodieCatalogFactory.java │ │ │ │ └── TestHoodieHiveCatalog.java │ │ │ └── format │ │ │ │ ├── TestCastMap.java │ │ │ │ ├── TestFlinkRowDataReaderContext.java │ │ │ │ ├── TestFormatUtils.java │ │ │ │ ├── TestInputFormat.java │ │ │ │ └── cow │ │ │ │ └── TestBlockLocationSort.java │ │ │ ├── util │ │ │ └── TestExpressionUtils.java │ │ │ └── utils │ │ │ ├── FlinkMiniCluster.java │ │ │ ├── SchemaBuilder.java │ │ │ ├── TestAvroSchemaConverter.java │ │ │ ├── TestClusteringUtil.java │ │ │ ├── TestCompactionUtil.java │ │ │ ├── TestConfigurations.java │ │ │ ├── TestData.java │ │ │ ├── TestFlinkWriteClients.java │ │ │ ├── TestHoodieRowData.java │ │ │ ├── TestRecordKeyToRowDataConverter.java │ │ │ ├── TestRowDataToAvroConverters.java │ │ │ ├── TestSQL.java │ │ │ ├── TestSchemaEvolvingRowDataProjection.java │ │ │ ├── TestStreamerUtil.java │ │ │ ├── TestTableEnvs.java │ │ │ ├── TestUtils.java │ │ │ ├── TestViewStorageProperties.java │ │ │ ├── factory │ │ │ ├── CollectSinkTableFactory.java │ │ │ └── ContinuousFileSourceFactory.java │ │ │ └── source │ │ │ └── ContinuousFileSource.java │ │ └── resources │ │ ├── META-INF │ │ └── services │ │ │ └── org.apache.flink.table.factories.Factory │ │ ├── debezium_json.data │ │ ├── hive-site.xml │ │ ├── test-catalog-factory-conf │ │ └── hive-site.xml │ │ ├── test_read_schema.avsc │ │ ├── test_read_schema_dropped_age.avsc │ │ ├── test_source.data │ │ ├── test_source_2.data │ │ ├── test_source_3.data │ │ ├── test_source_4.data │ │ └── test_source_5.data ├── hudi-flink1.17.x │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── adapter │ │ │ ├── AbstractRichFunctionAdapter.java │ │ │ ├── CollectionInputFormatAdapter.java │ │ │ ├── DataStreamScanProviderAdapter.java │ │ │ ├── DataStreamSinkProviderAdapter.java │ │ │ ├── HiveCatalogConstants.java │ │ │ ├── InputFormatSourceFunctionAdapter.java │ │ │ ├── KeyedProcessFunctionAdapter.java │ │ │ ├── MaskingOutputAdapter.java │ │ │ ├── ProcessFunctionAdapter.java │ │ │ ├── RichSinkFunctionAdapter.java │ │ │ ├── RichSourceFunctionAdapter.java │ │ │ ├── SinkAdapter.java │ │ │ ├── SinkFunctionAdapter.java │ │ │ ├── SinkFunctionProviderAdapter.java │ │ │ ├── SourceFunctionAdapter.java │ │ │ ├── SupportsPreWriteTopologyAdapter.java │ │ │ ├── TableFunctionProviderAdapter.java │ │ │ ├── TypeInformationAdapter.java │ │ │ ├── Utils.java │ │ │ └── YieldingOperatorFactoryAdapter.java │ │ │ ├── table │ │ │ └── format │ │ │ │ └── cow │ │ │ │ ├── ParquetSplitReaderUtil.java │ │ │ │ └── vector │ │ │ │ ├── HeapArrayVector.java │ │ │ │ ├── HeapDecimalVector.java │ │ │ │ ├── HeapMapColumnVector.java │ │ │ │ ├── HeapRowColumnVector.java │ │ │ │ ├── ParquetDecimalVector.java │ │ │ │ └── reader │ │ │ │ ├── AbstractColumnReader.java │ │ │ │ ├── ArrayColumnReader.java │ │ │ │ ├── BaseVectorizedColumnReader.java │ │ │ │ ├── EmptyColumnReader.java │ │ │ │ ├── FixedLenBytesColumnReader.java │ │ │ │ ├── Int64TimestampColumnReader.java │ │ │ │ ├── MapColumnReader.java │ │ │ │ ├── ParquetColumnarRowSplitReader.java │ │ │ │ ├── ParquetDataColumnReader.java │ │ │ │ ├── ParquetDataColumnReaderFactory.java │ │ │ │ ├── RowColumnReader.java │ │ │ │ └── RunLengthDecoder.java │ │ │ └── utils │ │ │ ├── CatalogUtils.java │ │ │ ├── DataTypeUtils.java │ │ │ ├── RuntimeContextUtils.java │ │ │ ├── SourceContextUtils.java │ │ │ ├── StateTtlConfigUtils.java │ │ │ └── StreamerUtils.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ ├── adapter │ │ ├── CollectOutputAdapter.java │ │ ├── ExecutionAttemptUtil.java │ │ ├── KeyedStateStoreAdapter.java │ │ ├── OperatorStateStoreAdapter.java │ │ ├── TestHoodieCatalogs.java │ │ └── TestStreamConfigs.java │ │ └── sink │ │ └── utils │ │ └── MockTaskInfo.java ├── hudi-flink1.18.x │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── adapter │ │ │ ├── AbstractRichFunctionAdapter.java │ │ │ ├── CollectionInputFormatAdapter.java │ │ │ ├── DataStreamScanProviderAdapter.java │ │ │ ├── DataStreamSinkProviderAdapter.java │ │ │ ├── HiveCatalogConstants.java │ │ │ ├── InputFormatSourceFunctionAdapter.java │ │ │ ├── KeyedProcessFunctionAdapter.java │ │ │ ├── MaskingOutputAdapter.java │ │ │ ├── ProcessFunctionAdapter.java │ │ │ ├── RichSinkFunctionAdapter.java │ │ │ ├── RichSourceFunctionAdapter.java │ │ │ ├── SinkAdapter.java │ │ │ ├── SinkFunctionAdapter.java │ │ │ ├── SinkFunctionProviderAdapter.java │ │ │ ├── SourceFunctionAdapter.java │ │ │ ├── SupportsPreWriteTopologyAdapter.java │ │ │ ├── TableFunctionProviderAdapter.java │ │ │ ├── TypeInformationAdapter.java │ │ │ ├── Utils.java │ │ │ └── YieldingOperatorFactoryAdapter.java │ │ │ ├── table │ │ │ └── format │ │ │ │ └── cow │ │ │ │ ├── ParquetSplitReaderUtil.java │ │ │ │ └── vector │ │ │ │ ├── ColumnarGroupArrayData.java │ │ │ │ ├── ColumnarGroupMapData.java │ │ │ │ ├── ColumnarGroupRowData.java │ │ │ │ ├── HeapArrayGroupColumnVector.java │ │ │ │ ├── HeapArrayVector.java │ │ │ │ ├── HeapDecimalVector.java │ │ │ │ ├── HeapMapColumnVector.java │ │ │ │ ├── HeapRowColumnVector.java │ │ │ │ ├── ParquetDecimalVector.java │ │ │ │ └── reader │ │ │ │ ├── AbstractColumnReader.java │ │ │ │ ├── ArrayColumnReader.java │ │ │ │ ├── ArrayGroupReader.java │ │ │ │ ├── BaseVectorizedColumnReader.java │ │ │ │ ├── EmptyColumnReader.java │ │ │ │ ├── FixedLenBytesColumnReader.java │ │ │ │ ├── Int64TimestampColumnReader.java │ │ │ │ ├── MapColumnReader.java │ │ │ │ ├── ParquetColumnarRowSplitReader.java │ │ │ │ ├── ParquetDataColumnReader.java │ │ │ │ ├── ParquetDataColumnReaderFactory.java │ │ │ │ ├── RowColumnReader.java │ │ │ │ └── RunLengthDecoder.java │ │ │ └── utils │ │ │ ├── CatalogUtils.java │ │ │ ├── DataTypeUtils.java │ │ │ ├── RuntimeContextUtils.java │ │ │ ├── SourceContextUtils.java │ │ │ ├── StateTtlConfigUtils.java │ │ │ └── StreamerUtils.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ ├── adapter │ │ ├── CollectOutputAdapter.java │ │ ├── ExecutionAttemptUtil.java │ │ ├── KeyedStateStoreAdapter.java │ │ ├── OperatorStateStoreAdapter.java │ │ ├── TestHoodieCatalogs.java │ │ └── TestStreamConfigs.java │ │ └── sink │ │ └── utils │ │ └── MockTaskInfo.java ├── hudi-flink1.19.x │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── adapter │ │ │ ├── AbstractRichFunctionAdapter.java │ │ │ ├── CollectionInputFormatAdapter.java │ │ │ ├── DataStreamScanProviderAdapter.java │ │ │ ├── DataStreamSinkProviderAdapter.java │ │ │ ├── HiveCatalogConstants.java │ │ │ ├── InputFormatSourceFunctionAdapter.java │ │ │ ├── KeyedProcessFunctionAdapter.java │ │ │ ├── MaskingOutputAdapter.java │ │ │ ├── ProcessFunctionAdapter.java │ │ │ ├── RichSinkFunctionAdapter.java │ │ │ ├── RichSourceFunctionAdapter.java │ │ │ ├── SinkAdapter.java │ │ │ ├── SinkFunctionAdapter.java │ │ │ ├── SinkFunctionProviderAdapter.java │ │ │ ├── SourceFunctionAdapter.java │ │ │ ├── SupportsPreWriteTopologyAdapter.java │ │ │ ├── TableFunctionProviderAdapter.java │ │ │ ├── TypeInformationAdapter.java │ │ │ ├── Utils.java │ │ │ └── YieldingOperatorFactoryAdapter.java │ │ │ ├── table │ │ │ └── format │ │ │ │ └── cow │ │ │ │ ├── ParquetSplitReaderUtil.java │ │ │ │ └── vector │ │ │ │ ├── ColumnarGroupArrayData.java │ │ │ │ ├── ColumnarGroupMapData.java │ │ │ │ ├── ColumnarGroupRowData.java │ │ │ │ ├── HeapArrayGroupColumnVector.java │ │ │ │ ├── HeapArrayVector.java │ │ │ │ ├── HeapDecimalVector.java │ │ │ │ ├── HeapMapColumnVector.java │ │ │ │ ├── HeapRowColumnVector.java │ │ │ │ ├── ParquetDecimalVector.java │ │ │ │ └── reader │ │ │ │ ├── AbstractColumnReader.java │ │ │ │ ├── ArrayColumnReader.java │ │ │ │ ├── ArrayGroupReader.java │ │ │ │ ├── BaseVectorizedColumnReader.java │ │ │ │ ├── EmptyColumnReader.java │ │ │ │ ├── FixedLenBytesColumnReader.java │ │ │ │ ├── Int64TimestampColumnReader.java │ │ │ │ ├── MapColumnReader.java │ │ │ │ ├── ParquetColumnarRowSplitReader.java │ │ │ │ ├── ParquetDataColumnReader.java │ │ │ │ ├── ParquetDataColumnReaderFactory.java │ │ │ │ ├── RowColumnReader.java │ │ │ │ └── RunLengthDecoder.java │ │ │ └── utils │ │ │ ├── CatalogUtils.java │ │ │ ├── DataTypeUtils.java │ │ │ ├── RuntimeContextUtils.java │ │ │ ├── SourceContextUtils.java │ │ │ ├── StateTtlConfigUtils.java │ │ │ └── StreamerUtils.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ ├── adapter │ │ ├── CollectOutputAdapter.java │ │ ├── ExecutionAttemptUtil.java │ │ ├── KeyedStateStoreAdapter.java │ │ ├── OperatorStateStoreAdapter.java │ │ ├── TestHoodieCatalogs.java │ │ └── TestStreamConfigs.java │ │ └── sink │ │ └── utils │ │ └── MockTaskInfo.java ├── hudi-flink1.20.x │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── adapter │ │ │ ├── AbstractRichFunctionAdapter.java │ │ │ ├── CollectionInputFormatAdapter.java │ │ │ ├── DataStreamScanProviderAdapter.java │ │ │ ├── DataStreamSinkProviderAdapter.java │ │ │ ├── HiveCatalogConstants.java │ │ │ ├── InputFormatSourceFunctionAdapter.java │ │ │ ├── KeyedProcessFunctionAdapter.java │ │ │ ├── MaskingOutputAdapter.java │ │ │ ├── ProcessFunctionAdapter.java │ │ │ ├── RichSinkFunctionAdapter.java │ │ │ ├── RichSourceFunctionAdapter.java │ │ │ ├── SinkAdapter.java │ │ │ ├── SinkFunctionAdapter.java │ │ │ ├── SinkFunctionProviderAdapter.java │ │ │ ├── SourceFunctionAdapter.java │ │ │ ├── SupportsPreWriteTopologyAdapter.java │ │ │ ├── TableFunctionProviderAdapter.java │ │ │ ├── TypeInformationAdapter.java │ │ │ ├── Utils.java │ │ │ └── YieldingOperatorFactoryAdapter.java │ │ │ ├── table │ │ │ └── format │ │ │ │ └── cow │ │ │ │ ├── ParquetSplitReaderUtil.java │ │ │ │ └── vector │ │ │ │ ├── ColumnarGroupArrayData.java │ │ │ │ ├── ColumnarGroupMapData.java │ │ │ │ ├── ColumnarGroupRowData.java │ │ │ │ ├── HeapArrayGroupColumnVector.java │ │ │ │ ├── HeapArrayVector.java │ │ │ │ ├── HeapDecimalVector.java │ │ │ │ ├── HeapMapColumnVector.java │ │ │ │ ├── HeapRowColumnVector.java │ │ │ │ ├── ParquetDecimalVector.java │ │ │ │ └── reader │ │ │ │ ├── AbstractColumnReader.java │ │ │ │ ├── ArrayColumnReader.java │ │ │ │ ├── ArrayGroupReader.java │ │ │ │ ├── BaseVectorizedColumnReader.java │ │ │ │ ├── EmptyColumnReader.java │ │ │ │ ├── FixedLenBytesColumnReader.java │ │ │ │ ├── Int64TimestampColumnReader.java │ │ │ │ ├── MapColumnReader.java │ │ │ │ ├── ParquetColumnarRowSplitReader.java │ │ │ │ ├── ParquetDataColumnReader.java │ │ │ │ ├── ParquetDataColumnReaderFactory.java │ │ │ │ ├── RowColumnReader.java │ │ │ │ └── RunLengthDecoder.java │ │ │ └── utils │ │ │ ├── CatalogUtils.java │ │ │ ├── DataTypeUtils.java │ │ │ ├── RuntimeContextUtils.java │ │ │ ├── SourceContextUtils.java │ │ │ ├── StateTtlConfigUtils.java │ │ │ └── StreamerUtils.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ ├── adapter │ │ ├── CollectOutputAdapter.java │ │ ├── ExecutionAttemptUtil.java │ │ ├── KeyedStateStoreAdapter.java │ │ ├── OperatorStateStoreAdapter.java │ │ ├── TestHoodieCatalogs.java │ │ └── TestStreamConfigs.java │ │ └── sink │ │ └── utils │ │ └── MockTaskInfo.java ├── hudi-flink2.0.x │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── adapter │ │ │ ├── AbstractRichFunctionAdapter.java │ │ │ ├── CollectionInputFormatAdapter.java │ │ │ ├── DataStreamScanProviderAdapter.java │ │ │ ├── DataStreamSinkProviderAdapter.java │ │ │ ├── HiveCatalogConstants.java │ │ │ ├── InputFormatSourceFunctionAdapter.java │ │ │ ├── KeyedProcessFunctionAdapter.java │ │ │ ├── MaskingOutputAdapter.java │ │ │ ├── ProcessFunctionAdapter.java │ │ │ ├── RichSinkFunctionAdapter.java │ │ │ ├── RichSourceFunctionAdapter.java │ │ │ ├── SinkAdapter.java │ │ │ ├── SinkFunctionAdapter.java │ │ │ ├── SinkFunctionProviderAdapter.java │ │ │ ├── SourceFunctionAdapter.java │ │ │ ├── SupportsPreWriteTopologyAdapter.java │ │ │ ├── TableFunctionProviderAdapter.java │ │ │ ├── TypeInformationAdapter.java │ │ │ ├── Utils.java │ │ │ └── YieldingOperatorFactoryAdapter.java │ │ │ ├── table │ │ │ └── format │ │ │ │ └── cow │ │ │ │ ├── ParquetSplitReaderUtil.java │ │ │ │ └── vector │ │ │ │ ├── ColumnarGroupArrayData.java │ │ │ │ ├── ColumnarGroupMapData.java │ │ │ │ ├── ColumnarGroupRowData.java │ │ │ │ ├── HeapArrayGroupColumnVector.java │ │ │ │ ├── HeapArrayVector.java │ │ │ │ ├── HeapDecimalVector.java │ │ │ │ ├── HeapMapColumnVector.java │ │ │ │ ├── HeapRowColumnVector.java │ │ │ │ ├── ParquetDecimalVector.java │ │ │ │ └── reader │ │ │ │ ├── AbstractColumnReader.java │ │ │ │ ├── ArrayColumnReader.java │ │ │ │ ├── ArrayGroupReader.java │ │ │ │ ├── BaseVectorizedColumnReader.java │ │ │ │ ├── EmptyColumnReader.java │ │ │ │ ├── FixedLenBytesColumnReader.java │ │ │ │ ├── Int64TimestampColumnReader.java │ │ │ │ ├── MapColumnReader.java │ │ │ │ ├── ParquetColumnarRowSplitReader.java │ │ │ │ ├── ParquetDataColumnReader.java │ │ │ │ ├── ParquetDataColumnReaderFactory.java │ │ │ │ ├── RowColumnReader.java │ │ │ │ └── RunLengthDecoder.java │ │ │ └── utils │ │ │ ├── CatalogUtils.java │ │ │ ├── DataTypeUtils.java │ │ │ ├── RuntimeContextUtils.java │ │ │ ├── SourceContextUtils.java │ │ │ ├── StateTtlConfigUtils.java │ │ │ └── StreamerUtils.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ ├── flink │ │ └── api │ │ │ └── java │ │ │ └── typeutils │ │ │ └── runtime │ │ │ ├── NoFetchingInput.java │ │ │ └── kryo │ │ │ ├── KryoSerializer.java │ │ │ └── KryoSerializerSnapshot.java │ │ └── hudi │ │ ├── adapter │ │ ├── CollectOutputAdapter.java │ │ ├── ExecutionAttemptUtil.java │ │ ├── KeyedStateStoreAdapter.java │ │ ├── OperatorStateStoreAdapter.java │ │ ├── TestHoodieCatalogs.java │ │ └── TestStreamConfigs.java │ │ └── sink │ │ └── utils │ │ └── MockTaskInfo.java └── pom.xml ├── hudi-gcp ├── pom.xml └── src │ ├── assembly │ └── src.xml │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── gcp │ │ ├── bigquery │ │ ├── BigQuerySchemaResolver.java │ │ ├── BigQuerySyncConfig.java │ │ ├── BigQuerySyncTool.java │ │ ├── HoodieBigQuerySyncClient.java │ │ └── HoodieBigQuerySyncException.java │ │ └── transaction │ │ └── lock │ │ └── GCSStorageLockClient.java │ └── test │ └── java │ └── org │ └── apache │ └── hudi │ └── gcp │ ├── bigquery │ ├── TestBigQuerySchemaResolver.java │ ├── TestBigQuerySyncConfig.java │ ├── TestBigQuerySyncTool.java │ ├── TestBigQuerySyncToolArgs.java │ └── TestHoodieBigQuerySyncClient.java │ └── transaction │ └── lock │ ├── TestGCSStorageBasedLockProvider.java │ ├── TestGCSStorageLockClient.java │ └── TestGCSStorageLockClientAuditOperations.java ├── hudi-hadoop-common ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ ├── hudi │ │ ├── avro │ │ │ └── HoodieAvroWriteSupport.java │ │ ├── common │ │ │ ├── config │ │ │ │ └── DFSPropertiesConfiguration.java │ │ │ ├── table │ │ │ │ ├── ParquetTableSchemaResolver.java │ │ │ │ └── log │ │ │ │ │ └── HoodieLogFormatWriter.java │ │ │ └── util │ │ │ │ ├── AvroOrcUtils.java │ │ │ │ ├── HadoopConfigUtils.java │ │ │ │ ├── OrcUtils.java │ │ │ │ ├── ParquetReaderIterator.java │ │ │ │ └── ParquetUtils.java │ │ ├── hadoop │ │ │ └── fs │ │ │ │ ├── BoundedFsDataInputStream.java │ │ │ │ ├── CachingPath.java │ │ │ │ ├── HadoopFSUtils.java │ │ │ │ ├── HadoopSeekableDataInputStream.java │ │ │ │ ├── HoodieRetryWrapperFileSystem.java │ │ │ │ ├── HoodieSerializableFileStatus.java │ │ │ │ ├── HoodieWrapperFileSystem.java │ │ │ │ ├── SchemeAwareFSDataInputStream.java │ │ │ │ ├── SizeAwareFSDataOutputStream.java │ │ │ │ ├── TimedFSDataInputStream.java │ │ │ │ └── inline │ │ │ │ ├── HadoopInLineFSUtils.java │ │ │ │ ├── InLineFileSystem.java │ │ │ │ ├── InLineFsDataInputStream.java │ │ │ │ └── InMemoryFileSystem.java │ │ ├── io │ │ │ ├── hadoop │ │ │ │ ├── HoodieAvroFileReaderFactory.java │ │ │ │ ├── HoodieAvroFileWriterFactory.java │ │ │ │ ├── HoodieAvroHFileWriter.java │ │ │ │ ├── HoodieAvroOrcReader.java │ │ │ │ ├── HoodieAvroOrcWriter.java │ │ │ │ ├── HoodieAvroParquetReader.java │ │ │ │ ├── HoodieAvroParquetReaderIterator.java │ │ │ │ ├── HoodieAvroParquetWriter.java │ │ │ │ ├── HoodieBaseParquetWriter.java │ │ │ │ ├── HoodieHadoopIOFactory.java │ │ │ │ ├── HoodieParquetStreamWriter.java │ │ │ │ └── OrcReaderIterator.java │ │ │ └── storage │ │ │ │ └── HoodieParquetConfig.java │ │ ├── parquet │ │ │ └── io │ │ │ │ ├── HoodieParquetBinaryCopyBase.java │ │ │ │ ├── HoodieParquetFileBinaryCopier.java │ │ │ │ ├── OutputStreamBackedOutputFile.java │ │ │ │ └── ParquetBinaryCopyChecker.java │ │ └── storage │ │ │ └── hadoop │ │ │ ├── HadoopStorageConfiguration.java │ │ │ └── HoodieHadoopStorage.java │ │ └── parquet │ │ ├── avro │ │ ├── AvroSchemaConverterWithTimestampNTZ.java │ │ ├── HoodieAvroParquetReaderBuilder.java │ │ ├── HoodieAvroParquetSchemaConverter.java │ │ ├── HoodieAvroReadSupport.java │ │ └── NativeAvroSchemaConverter.java │ │ ├── conf │ │ └── ParquetConfiguration.java │ │ └── schema │ │ └── SchemaRepair.java │ └── test │ ├── java │ └── org │ │ └── apache │ │ ├── hudi │ │ ├── client │ │ │ └── transaction │ │ │ │ └── lock │ │ │ │ ├── TestInProcessLockProvider.java │ │ │ │ └── TestNoopLockProvider.java │ │ ├── common │ │ │ ├── bloom │ │ │ │ └── TestBloomFilter.java │ │ │ ├── bootstrap │ │ │ │ └── index │ │ │ │ │ ├── TestBaseHoodieTableFileIndex.java │ │ │ │ │ └── TestBootstrapIndex.java │ │ │ ├── engine │ │ │ │ └── TestHoodieLocalEngineContext.java │ │ │ ├── fs │ │ │ │ ├── TestFSUtils.java │ │ │ │ ├── TestFSUtilsWithRetryWrapperEnable.java │ │ │ │ ├── TestHoodieWrapperFileSystem.java │ │ │ │ ├── TestStorageSchemes.java │ │ │ │ └── inline │ │ │ │ │ ├── InLineFSUtilsTest.java │ │ │ │ │ ├── TestInLineFileSystem.java │ │ │ │ │ ├── TestInLineFileSystemWithHFileReader.java │ │ │ │ │ ├── TestInMemoryFileSystem.java │ │ │ │ │ └── TestParquetInLining.java │ │ │ ├── functional │ │ │ │ ├── TestHoodieLogFormat.java │ │ │ │ └── TestHoodieLogFormatAppendFailure.java │ │ │ ├── model │ │ │ │ ├── TestHoodieAvroIndexedRecord.java │ │ │ │ ├── TestHoodieFileGroup.java │ │ │ │ ├── TestHoodiePartitionMetadata.java │ │ │ │ ├── TestHoodieRecord.java │ │ │ │ └── TestHoodieRecordDelegate.java │ │ │ ├── table │ │ │ │ ├── TestHoodieTableConfig.java │ │ │ │ ├── TestHoodieTableMetaClient.java │ │ │ │ ├── TestTableSchemaResolver.java │ │ │ │ ├── TestTimelineUtils.java │ │ │ │ ├── TestTimelineUtilsBackComp.java │ │ │ │ ├── log │ │ │ │ │ ├── TestLogReaderUtils.java │ │ │ │ │ └── block │ │ │ │ │ │ ├── TestHoodieDeleteBlock.java │ │ │ │ │ │ └── TestHoodieLogWriterBuilder.java │ │ │ │ ├── read │ │ │ │ │ ├── TestCustomRecordMerger.java │ │ │ │ │ ├── TestEventTimeMerging.java │ │ │ │ │ ├── TestHoodieFileGroupReaderInflightCommit.java │ │ │ │ │ └── TestOverwriteWithLatestMerger.java │ │ │ │ ├── timeline │ │ │ │ │ ├── TestArchivedTimelineV1.java │ │ │ │ │ ├── TestHoodieActiveTimeline.java │ │ │ │ │ ├── TestHoodieInstant.java │ │ │ │ │ ├── TestTimelinePathProvider.java │ │ │ │ │ └── TestWaitBasedTimeGenerator.java │ │ │ │ └── view │ │ │ │ │ ├── TestHoodieTableFSViewWithClustering.java │ │ │ │ │ ├── TestHoodieTableFileSystemView.java │ │ │ │ │ ├── TestIncrementalFSViewSync.java │ │ │ │ │ ├── TestRocksDBBasedIncrementalFSViewSync.java │ │ │ │ │ ├── TestRocksDbBasedFileSystemView.java │ │ │ │ │ ├── TestSpillableMapBasedFileSystemView.java │ │ │ │ │ └── TestSpillableMapBasedIncrementalFSViewSync.java │ │ │ ├── testutils │ │ │ │ ├── FileSystemTestUtils.java │ │ │ │ ├── HadoopFSTestUtils.java │ │ │ │ ├── HoodieCommonTestHarness.java │ │ │ │ ├── HoodieTestTable.java │ │ │ │ ├── minicluster │ │ │ │ │ └── HdfsTestService.java │ │ │ │ └── reader │ │ │ │ │ └── HoodieFileGroupReaderTestHarness.java │ │ │ └── util │ │ │ │ ├── TestAvroOrcUtils.java │ │ │ │ ├── TestClusteringUtils.java │ │ │ │ ├── TestCommitUtils.java │ │ │ │ ├── TestCompactionUtils.java │ │ │ │ ├── TestDFSPropertiesConfiguration.java │ │ │ │ ├── TestFileIOUtils.java │ │ │ │ ├── TestHadoopConfigUtils.java │ │ │ │ ├── TestMarkerUtils.java │ │ │ │ ├── TestParquetReaderIterator.java │ │ │ │ ├── TestParquetUtils.java │ │ │ │ ├── TestTablePathUtils.java │ │ │ │ └── collection │ │ │ │ ├── TestArrayComparables.java │ │ │ │ ├── TestBitCaskDiskMap.java │ │ │ │ ├── TestExternalSpillableMap.java │ │ │ │ ├── TestRocksDbBasedMap.java │ │ │ │ └── TestRocksDbDiskMap.java │ │ ├── hadoop │ │ │ └── fs │ │ │ │ └── TestHadoopFSUtils.java │ │ ├── internal │ │ │ └── schema │ │ │ │ └── io │ │ │ │ └── TestFileBasedInternalSchemaStorageManager.java │ │ ├── io │ │ │ ├── hadoop │ │ │ │ ├── TestHoodieAvroFileReaderFactory.java │ │ │ │ ├── TestHoodieBaseParquetWriter.java │ │ │ │ ├── TestHoodieHFileReaderWriter.java │ │ │ │ ├── TestHoodieHadoopIOFactory.java │ │ │ │ ├── TestHoodieOrcReaderWriter.java │ │ │ │ ├── TestHoodieReaderWriterBase.java │ │ │ │ └── TestOrcReaderIterator.java │ │ │ └── storage │ │ │ │ └── TestHoodieNativeAvroHFileReaderCaching.java │ │ ├── metadata │ │ │ ├── TestFileSystemBackedTableMetadata.java │ │ │ ├── TestHoodieMetadataPayload.java │ │ │ └── TestHoodieTableMetadataUtil.java │ │ ├── parquet │ │ │ └── io │ │ │ │ ├── TestHoodieParquetBinaryCopyBaseSchemaEvolution.java │ │ │ │ ├── TestHoodieParquetFileBinaryCopier.java │ │ │ │ └── TestParquetBinaryCopyChecker.java │ │ └── storage │ │ │ └── hadoop │ │ │ ├── TestHadoopStorageConfiguration.java │ │ │ └── TestHoodieHadoopStorage.java │ │ └── parquet │ │ ├── avro │ │ ├── TestAvroSchemaConverter.java │ │ └── TestHoodieAvroReadSupport.java │ │ └── schema │ │ ├── TestSchemaRepair.java │ │ └── TestSchemaRepairEquivalence.java │ └── resources │ ├── archived_timeline │ └── .hoodie │ │ ├── archived │ │ └── .commits_.archive.1_1-0-1 │ │ └── hoodie.properties │ ├── external-config │ └── hudi-defaults.conf │ ├── hfile │ └── hudi_1_0_hbase_2_4_13_avro_simple_schema_fake_first_key.hfile │ ├── hudi_0_13_0_archive │ └── .commits_.archive.1_1-0-1 │ ├── hudi_0_8_0_archive │ └── .commits_.archive.1_1-0-1 │ ├── parquet-java │ ├── all.avsc │ ├── allFromParquetNewBehavior.avsc │ ├── allFromParquetOldBehavior.avsc │ └── fixedToInt96.avsc │ └── props │ └── testdfs.properties ├── hudi-hadoop-mr ├── pom.xml └── src │ ├── main │ └── java │ │ ├── com │ │ └── uber │ │ │ └── hoodie │ │ │ └── hadoop │ │ │ ├── HoodieInputFormat.java │ │ │ └── realtime │ │ │ └── HoodieRealtimeInputFormat.java │ │ └── org │ │ └── apache │ │ ├── hadoop │ │ └── hive │ │ │ └── serde2 │ │ │ └── avro │ │ │ └── HiveTypeUtils.java │ │ └── hudi │ │ └── hadoop │ │ ├── BootstrapBaseFileSplit.java │ │ ├── BootstrapColumnStichingRecordReader.java │ │ ├── DefaultHiveRecordMerger.java │ │ ├── FileStatusWithBootstrapBaseFile.java │ │ ├── HiveHoodieReaderContext.java │ │ ├── HiveHoodieTableFileIndex.java │ │ ├── HiveRecordContext.java │ │ ├── HoodieColumnProjectionUtils.java │ │ ├── HoodieCopyOnWriteTableInputFormat.java │ │ ├── HoodieFileGroupReaderBasedRecordReader.java │ │ ├── HoodieHFileInputFormat.java │ │ ├── HoodieHFileRecordReader.java │ │ ├── HoodieHiveRecord.java │ │ ├── HoodieHiveRecordMerger.java │ │ ├── HoodieParquetInputFormat.java │ │ ├── HoodieParquetInputFormatBase.java │ │ ├── HoodieROTablePathFilter.java │ │ ├── HoodieTableInputFormat.java │ │ ├── InputPathHandler.java │ │ ├── InputSplitUtils.java │ │ ├── LocatedFileStatusWithBootstrapBaseFile.java │ │ ├── OverwriteWithLatestHiveRecordMerger.java │ │ ├── PathWithBootstrapFileStatus.java │ │ ├── RealtimeFileStatus.java │ │ ├── RecordReaderValueIterator.java │ │ ├── SafeParquetRecordReaderWrapper.java │ │ ├── SchemaEvolutionContext.java │ │ ├── UseFileSplitsFromInputFormat.java │ │ ├── UseRecordReaderFromInputFormat.java │ │ ├── avro │ │ ├── HoodieAvroParquetReader.java │ │ └── HoodieTimestampAwareParquetInputFormat.java │ │ ├── hive │ │ ├── HoodieCombineHiveInputFormat.java │ │ ├── HoodieCombineRealtimeFileSplit.java │ │ └── HoodieCombineRealtimeHiveSplit.java │ │ ├── realtime │ │ ├── AbstractRealtimeRecordReader.java │ │ ├── HoodieCombineRealtimeRecordReader.java │ │ ├── HoodieEmptyRecordReader.java │ │ ├── HoodieHFileRealtimeInputFormat.java │ │ ├── HoodieMergeOnReadTableInputFormat.java │ │ ├── HoodieParquetRealtimeInputFormat.java │ │ ├── HoodieParquetSerde.java │ │ ├── HoodieRealtimeBootstrapBaseFileSplit.java │ │ ├── HoodieRealtimeFileSplit.java │ │ ├── HoodieRealtimePath.java │ │ ├── HoodieRealtimeRecordReader.java │ │ ├── HoodieVirtualKeyInfo.java │ │ ├── RealtimeCompactedRecordReader.java │ │ ├── RealtimeSplit.java │ │ └── RealtimeUnmergedRecordReader.java │ │ └── utils │ │ ├── HiveAvroSerializer.java │ │ ├── HiveJavaTypeConverter.java │ │ ├── HoodieArrayWritableAvroUtils.java │ │ ├── HoodieHiveUtils.java │ │ ├── HoodieInputFormatUtils.java │ │ ├── HoodieRealtimeInputFormatUtils.java │ │ ├── HoodieRealtimeRecordReaderUtils.java │ │ └── shims │ │ ├── Hive2Shim.java │ │ ├── Hive3Shim.java │ │ ├── HiveShim.java │ │ └── HiveShims.java │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── hudi │ │ └── hadoop │ │ ├── TestAnnotation.java │ │ ├── TestGloballyConsistentTimeStampFilteringInputFormat.java │ │ ├── TestHiveHoodieReaderContext.java │ │ ├── TestHiveJavaTypeConverter.java │ │ ├── TestHoodieColumnProjectionUtils.java │ │ ├── TestHoodieCopyOnWriteTableInputFormat.java │ │ ├── TestHoodieFileGroupReaderBasedRecordReader.java │ │ ├── TestHoodieHFileInputFormat.java │ │ ├── TestHoodieHiveRecord.java │ │ ├── TestHoodieParquetInputFormat.java │ │ ├── TestHoodieROTablePathFilter.java │ │ ├── TestInputPathHandler.java │ │ ├── TestRecordReaderValueIterator.java │ │ ├── hive │ │ └── TestHoodieCombineHiveInputFormat.java │ │ ├── realtime │ │ ├── TestHoodieMergeOnReadTableInputFormat.java │ │ ├── TestHoodieRealtimeFileSplit.java │ │ └── TestHoodieRealtimeRecordReader.java │ │ ├── testutils │ │ └── InputFormatTestUtil.java │ │ └── utils │ │ ├── TestHiveAvroSerializer.java │ │ ├── TestHoodieArrayWritableAvroUtils.java │ │ └── TestHoodieRealtimeInputFormatUtils.java │ └── resources │ ├── emptyFile │ ├── sample1.avsc │ └── test_timetype.avsc ├── hudi-integ-test ├── README.md ├── pom.xml ├── prepare_integration_suite.sh └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── integ │ │ │ └── testsuite │ │ │ ├── HoodieContinuousTestSuiteWriter.java │ │ │ ├── HoodieDeltaStreamerWrapper.java │ │ │ ├── HoodieInlineTestSuiteWriter.java │ │ │ ├── HoodieMultiWriterTestSuiteJob.java │ │ │ ├── HoodieTestSuiteJob.java │ │ │ ├── HoodieTestSuiteWriter.java │ │ │ ├── SparkDataSourceContinuousIngestTool.java │ │ │ ├── configuration │ │ │ ├── DFSDeltaConfig.java │ │ │ └── DeltaConfig.java │ │ │ ├── converter │ │ │ ├── Converter.java │ │ │ ├── DeleteConverter.java │ │ │ └── UpdateConverter.java │ │ │ ├── dag │ │ │ ├── DagUtils.java │ │ │ ├── ExecutionContext.java │ │ │ ├── SimpleWorkflowDagGenerator.java │ │ │ ├── WorkflowDag.java │ │ │ ├── WorkflowDagGenerator.java │ │ │ ├── WriterContext.java │ │ │ ├── nodes │ │ │ │ ├── BaseQueryNode.java │ │ │ │ ├── BaseValidateDatasetNode.java │ │ │ │ ├── BulkInsertNode.java │ │ │ │ ├── CleanNode.java │ │ │ │ ├── ClusteringNode.java │ │ │ │ ├── CompactNode.java │ │ │ │ ├── DagNode.java │ │ │ │ ├── DelayNode.java │ │ │ │ ├── DeleteInputDatasetNode.java │ │ │ │ ├── DeleteNode.java │ │ │ │ ├── HiveQueryNode.java │ │ │ │ ├── HiveSyncNode.java │ │ │ │ ├── InsertNode.java │ │ │ │ ├── InsertOverwriteNode.java │ │ │ │ ├── InsertOverwriteTableNode.java │ │ │ │ ├── PrestoQueryNode.java │ │ │ │ ├── RollbackNode.java │ │ │ │ ├── ScheduleCompactNode.java │ │ │ │ ├── SparkSQLQueryNode.java │ │ │ │ ├── TrinoQueryNode.java │ │ │ │ ├── UpsertNode.java │ │ │ │ ├── ValidateAsyncOperations.java │ │ │ │ ├── ValidateDatasetNode.java │ │ │ │ └── ValidateNode.java │ │ │ └── scheduler │ │ │ │ ├── DagScheduler.java │ │ │ │ └── SaferSchemaDagScheduler.java │ │ │ ├── generator │ │ │ ├── DeleteGeneratorIterator.java │ │ │ ├── DeltaGenerator.java │ │ │ ├── FlexibleSchemaRecordGenerationIterator.java │ │ │ ├── GenericRecordFullPayloadGenerator.java │ │ │ ├── GenericRecordFullPayloadSizeEstimator.java │ │ │ ├── GenericRecordPartialPayloadGenerator.java │ │ │ ├── LazyRecordGeneratorIterator.java │ │ │ └── UpdateGeneratorIterator.java │ │ │ ├── helpers │ │ │ ├── DFSTestSuitePathSelector.java │ │ │ ├── HiveServiceProvider.java │ │ │ └── ZookeeperServiceProvider.java │ │ │ ├── reader │ │ │ ├── DFSAvroDeltaInputReader.java │ │ │ ├── DFSDeltaInputReader.java │ │ │ ├── DFSHoodieDatasetInputReader.java │ │ │ ├── DeltaInputReader.java │ │ │ ├── DeltaInputType.java │ │ │ └── SparkBasedReader.java │ │ │ ├── schema │ │ │ ├── SchemaUtils.java │ │ │ └── TestSuiteFileBasedSchemaProvider.java │ │ │ ├── streaming │ │ │ └── StructuredStreamingSinkUtil.java │ │ │ └── writer │ │ │ ├── AvroFileDeltaInputWriter.java │ │ │ ├── DFSDeltaWriterAdapter.java │ │ │ ├── DFSSparkAvroDeltaWriter.java │ │ │ ├── DeltaInputWriter.java │ │ │ ├── DeltaOutputMode.java │ │ │ ├── DeltaWriteStats.java │ │ │ ├── DeltaWriterAdapter.java │ │ │ ├── DeltaWriterFactory.java │ │ │ └── SparkAvroDeltaInputWriter.java │ └── scala │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── integ │ │ └── testsuite │ │ ├── SparkDataSourceContinuousIngest.scala │ │ ├── dag │ │ └── nodes │ │ │ ├── SparkBulkInsertNode.scala │ │ │ ├── SparkDeleteNode.scala │ │ │ ├── SparkDeletePartitionNode.scala │ │ │ ├── SparkInsertNode.scala │ │ │ ├── SparkInsertOverwriteNode.scala │ │ │ ├── SparkInsertOverwriteTableNode.scala │ │ │ ├── SparkUpsertNode.scala │ │ │ └── spark │ │ │ └── sql │ │ │ ├── BaseSparkSqlNode.scala │ │ │ ├── SparkSqlCreateTableNode.scala │ │ │ ├── SparkSqlDeleteNode.scala │ │ │ ├── SparkSqlInsertNode.scala │ │ │ ├── SparkSqlInsertOverwriteNode.scala │ │ │ ├── SparkSqlMergeNode.scala │ │ │ ├── SparkSqlUpdateNode.scala │ │ │ └── SparkSqlValidateDatasetNode.scala │ │ ├── streaming │ │ └── StructuredStreamingSinkTestWriter.scala │ │ └── utils │ │ └── SparkSqlUtils.scala │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── hudi │ │ └── integ │ │ ├── HoodieTestHiveBase.java │ │ ├── ITTestBase.java │ │ ├── ITTestHoodieDemo.java │ │ ├── ITTestHoodieSanity.java │ │ ├── command │ │ └── ITTestHoodieSyncCommand.java │ │ └── testsuite │ │ ├── TestDFSHoodieTestSuiteWriterAdapter.java │ │ ├── TestFileDeltaInputWriter.java │ │ ├── configuration │ │ └── TestWorkflowBuilder.java │ │ ├── converter │ │ ├── TestDeleteConverter.java │ │ └── TestUpdateConverter.java │ │ ├── dag │ │ ├── ComplexDagGenerator.java │ │ ├── HiveSyncDagGenerator.java │ │ ├── HiveSyncDagGeneratorMOR.java │ │ └── TestDagUtils.java │ │ ├── generator │ │ ├── TestGenericRecordPayloadEstimator.java │ │ └── TestGenericRecordPayloadGenerator.java │ │ ├── job │ │ └── TestHoodieTestSuiteJob.java │ │ ├── reader │ │ ├── TestDFSAvroDeltaInputReader.java │ │ └── TestDFSHoodieDatasetInputReader.java │ │ └── utils │ │ └── TestUtils.java │ └── resources │ ├── hoodie-docker.properties │ ├── unit-test-cow-dag-spark-datasource.yaml │ ├── unit-test-cow-dag.yaml │ ├── unit-test-mor-dag.yaml │ └── unit-test-spark-sql-dag.yaml ├── hudi-io ├── README.md ├── hfile_format.md ├── pom.xml └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── ApiMaturityLevel.java │ │ │ ├── PublicAPIClass.java │ │ │ ├── PublicAPIMethod.java │ │ │ ├── common │ │ │ ├── fs │ │ │ │ └── ConsistencyGuard.java │ │ │ ├── metrics │ │ │ │ ├── Counter.java │ │ │ │ ├── LocalRegistry.java │ │ │ │ ├── Metric.java │ │ │ │ └── Registry.java │ │ │ └── util │ │ │ │ ├── ComparableVersion.java │ │ │ │ ├── FileIOUtils.java │ │ │ │ ├── HoodieTimer.java │ │ │ │ ├── Option.java │ │ │ │ ├── ReflectionUtils.java │ │ │ │ ├── RetryHelper.java │ │ │ │ ├── StringUtils.java │ │ │ │ ├── ValidationUtils.java │ │ │ │ └── io │ │ │ │ └── ByteBufferBackedInputStream.java │ │ │ ├── exception │ │ │ ├── HoodieException.java │ │ │ └── HoodieIOException.java │ │ │ ├── io │ │ │ ├── ByteArraySeekableDataInputStream.java │ │ │ ├── SeekableDataInputStream.java │ │ │ ├── compress │ │ │ │ ├── CompressionCodec.java │ │ │ │ ├── HoodieCompressor.java │ │ │ │ ├── HoodieCompressorFactory.java │ │ │ │ ├── airlift │ │ │ │ │ └── HoodieAirliftGzipCompressor.java │ │ │ │ └── builtin │ │ │ │ │ └── HoodieNoneCompressor.java │ │ │ ├── hfile │ │ │ │ ├── BlockIndexEntry.java │ │ │ │ ├── CachingHFileReaderImpl.java │ │ │ │ ├── ChecksumType.java │ │ │ │ ├── DataSize.java │ │ │ │ ├── HFileBlock.java │ │ │ │ ├── HFileBlockCache.java │ │ │ │ ├── HFileBlockReader.java │ │ │ │ ├── HFileBlockType.java │ │ │ │ ├── HFileContext.java │ │ │ │ ├── HFileCursor.java │ │ │ │ ├── HFileDataBlock.java │ │ │ │ ├── HFileFileInfoBlock.java │ │ │ │ ├── HFileIndexBlock.java │ │ │ │ ├── HFileInfo.java │ │ │ │ ├── HFileIntermediateIndexBlock.java │ │ │ │ ├── HFileLeafIndexBlock.java │ │ │ │ ├── HFileMetaBlock.java │ │ │ │ ├── HFileMetaIndexBlock.java │ │ │ │ ├── HFileReader.java │ │ │ │ ├── HFileReaderImpl.java │ │ │ │ ├── HFileRootIndexBlock.java │ │ │ │ ├── HFileTrailer.java │ │ │ │ ├── HFileUtils.java │ │ │ │ ├── HFileWriter.java │ │ │ │ ├── HFileWriterImpl.java │ │ │ │ ├── Key.java │ │ │ │ ├── KeyValue.java │ │ │ │ ├── KeyValueEntry.java │ │ │ │ └── UTF8StringKey.java │ │ │ └── util │ │ │ │ └── IOUtils.java │ │ │ └── storage │ │ │ ├── HoodieInstantWriter.java │ │ │ ├── HoodieStorage.java │ │ │ ├── StorageConfiguration.java │ │ │ ├── StoragePath.java │ │ │ ├── StoragePathFilter.java │ │ │ ├── StoragePathInfo.java │ │ │ ├── StorageSchemes.java │ │ │ └── inline │ │ │ └── InLineFSUtils.java │ └── protobuf │ │ └── HFile.proto │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── hudi │ │ ├── common │ │ ├── testutils │ │ │ └── NetworkTestUtils.java │ │ └── util │ │ │ └── TestStringUtils.java │ │ └── io │ │ ├── compress │ │ └── TestHoodieCompressor.java │ │ ├── hfile │ │ ├── TestHFileBlockCache.java │ │ ├── TestHFileCompatibility.java │ │ ├── TestHFileReadCompatibility.java │ │ ├── TestHFileReader.java │ │ ├── TestHFileWriter.java │ │ └── TestHfileBlock.java │ │ ├── storage │ │ ├── BaseTestStorageConfiguration.java │ │ ├── HoodieHBaseKVComparator.java │ │ ├── TestHoodieStorageBase.java │ │ ├── TestStoragePath.java │ │ ├── TestStoragePathFilter.java │ │ └── TestStoragePathInfo.java │ │ └── util │ │ ├── TestHFileUtils.java │ │ └── TestIOUtils.java │ └── resources │ └── hfile │ ├── hbase-generated.hfile │ ├── hudi-generated.hfile │ ├── hudi_0_10_hbase_1_2_3_bootstrap_index_partitions.hfile │ ├── hudi_0_10_hbase_1_2_3_complex.hfile │ ├── hudi_0_10_hbase_1_2_3_simple.hfile │ ├── hudi_0_11_hbase_2_4_9_bootstrap_index_partitions.hfile │ ├── hudi_0_11_hbase_2_4_9_complex.hfile │ ├── hudi_0_11_hbase_2_4_9_simple.hfile │ ├── hudi_0_9_hbase_1_2_3_bootstrap_index_partitions.hfile │ ├── hudi_0_9_hbase_1_2_3_complex.hfile │ ├── hudi_0_9_hbase_1_2_3_simple.hfile │ ├── hudi_1_0_hbase_2_4_13_16KB_GZ_20000_fake_first_key.hfile │ ├── hudi_1_0_hbase_2_4_13_1KB_GZ_10000_large_keys_deep_index.hfile │ ├── hudi_1_0_hbase_2_4_13_1KB_GZ_20000_large_keys.hfile │ ├── hudi_1_0_hbase_2_4_13_1KB_GZ_50000_large_keys_deep_index.hfile │ ├── hudi_1_0_hbase_2_4_9_16KB_GZ_20000.hfile │ ├── hudi_1_0_hbase_2_4_9_16KB_GZ_200_20_non_unique.hfile │ ├── hudi_1_0_hbase_2_4_9_16KB_NONE_5000.hfile │ ├── hudi_1_0_hbase_2_4_9_512KB_GZ_20000.hfile │ ├── hudi_1_0_hbase_2_4_9_64KB_NONE_5000.hfile │ └── hudi_1_0_hbase_2_4_9_no_entry.hfile ├── hudi-kafka-connect ├── README.md ├── demo │ ├── config-sink-hive.json │ ├── config-sink.json │ ├── connect-distributed.properties │ └── setupKafka.sh ├── pom.xml └── src │ ├── main │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── connect │ │ │ ├── HoodieSinkConnector.java │ │ │ ├── HoodieSinkTask.java │ │ │ ├── KafkaConnectFileIdPrefixProvider.java │ │ │ ├── kafka │ │ │ ├── KafkaConnectControlAgent.java │ │ │ ├── KafkaControlAgent.java │ │ │ └── KafkaControlProducer.java │ │ │ ├── transaction │ │ │ ├── ConnectTransactionCoordinator.java │ │ │ ├── ConnectTransactionParticipant.java │ │ │ ├── CoordinatorEvent.java │ │ │ ├── TransactionCoordinator.java │ │ │ ├── TransactionInfo.java │ │ │ └── TransactionParticipant.java │ │ │ ├── utils │ │ │ └── KafkaConnectUtils.java │ │ │ └── writers │ │ │ ├── AbstractConnectWriter.java │ │ │ ├── BufferedConnectWriter.java │ │ │ ├── ConnectTransactionServices.java │ │ │ ├── ConnectWriter.java │ │ │ ├── ConnectWriterProvider.java │ │ │ ├── KafkaConnectConfigs.java │ │ │ ├── KafkaConnectTransactionServices.java │ │ │ └── KafkaConnectWriterProvider.java │ └── resources │ │ └── ControlMessage.proto │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── hudi │ │ ├── connect │ │ ├── TestConnectTransactionCoordinator.java │ │ ├── TestConnectTransactionParticipant.java │ │ └── TestHdfsConfiguration.java │ │ ├── helper │ │ ├── MockConnectTransactionServices.java │ │ ├── MockKafkaConnect.java │ │ ├── MockKafkaControlAgent.java │ │ └── TestHudiWriterProvider.java │ │ └── writers │ │ ├── TestAbstractConnectWriter.java │ │ ├── TestBufferedConnectWriter.java │ │ └── TestKafkaConnectTransactionServices.java │ └── resources │ ├── hadoop_conf │ ├── core-site.xml │ └── hdfs-site.xml │ └── hadoop_home │ └── etc │ └── hadoop │ ├── core-site.xml │ └── hdfs-site.xml ├── hudi-notebooks ├── .dockerignore ├── .gitignore ├── Dockerfile.hive ├── Dockerfile.spark ├── Dockerfile.trino ├── README.md ├── build.sh ├── conf │ ├── hive │ │ └── metastore-site.xml │ ├── spark │ │ ├── hudi-defaults.conf │ │ └── spark-defaults.conf │ └── trino │ │ └── catalog │ │ ├── hive.properties │ │ └── hudi.properties ├── docker-compose.yml ├── entrypoint.sh ├── notebooks │ ├── 01-crud-operations.ipynb │ ├── 02-query-types.ipynb │ ├── 03-scd-type2_and_type4.ipynb │ ├── 04-schema-evolution.ipynb │ ├── 05-mastering-sql-procedures.ipynb │ ├── images │ │ ├── Hudi_SQL_Procedures.png │ │ └── Spark_Hudi.png │ └── utils.py └── run_spark_hudi.sh ├── hudi-platform-service ├── hudi-metaserver │ ├── README.md │ ├── hudi-metaserver-client │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── hudi │ │ │ │ ├── common │ │ │ │ └── table │ │ │ │ │ ├── HoodieTableMetaserverClient.java │ │ │ │ │ ├── timeline │ │ │ │ │ └── HoodieMetaserverBasedTimeline.java │ │ │ │ │ └── view │ │ │ │ │ └── HoodieMetaserverFileSystemView.java │ │ │ │ └── metaserver │ │ │ │ ├── client │ │ │ │ ├── HoodieMetaserverClient.java │ │ │ │ ├── HoodieMetaserverClientImp.java │ │ │ │ └── HoodieMetaserverClientProxy.java │ │ │ │ └── util │ │ │ │ └── EntityConversions.java │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── metaserver │ │ │ └── client │ │ │ └── TestHoodieMetaserverClient.java │ ├── hudi-metaserver-server │ │ ├── bin │ │ │ └── start_hudi_metaserver.sh │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ ├── java │ │ │ │ └── org │ │ │ │ │ └── apache │ │ │ │ │ └── hudi │ │ │ │ │ └── metaserver │ │ │ │ │ ├── HoodieMetaserver.java │ │ │ │ │ ├── HoodieMetaserverPreparations.java │ │ │ │ │ ├── service │ │ │ │ │ ├── HoodieMetaserverGateway.java │ │ │ │ │ ├── HoodieMetaserverProxyHandler.java │ │ │ │ │ ├── TableService.java │ │ │ │ │ └── TimelineService.java │ │ │ │ │ ├── store │ │ │ │ │ ├── MetaserverStorage.java │ │ │ │ │ ├── RelationalDBBasedStorage.java │ │ │ │ │ ├── bean │ │ │ │ │ │ ├── InstantBean.java │ │ │ │ │ │ └── TableBean.java │ │ │ │ │ └── jdbc │ │ │ │ │ │ ├── BasicDao.java │ │ │ │ │ │ ├── BatchDaoOperation.java │ │ │ │ │ │ ├── HikariDataSourceFactory.java │ │ │ │ │ │ ├── SqlSessionFactoryUtils.java │ │ │ │ │ │ └── WrapperDao.java │ │ │ │ │ └── util │ │ │ │ │ ├── MetaserverTableUtils.java │ │ │ │ │ └── TServerSocketWrapper.java │ │ │ └── resources │ │ │ │ ├── hikariPool.properties │ │ │ │ ├── mybatis-config.xml │ │ │ │ └── mybatis │ │ │ │ ├── DDLMapper.xml │ │ │ │ ├── TableMapper.xml │ │ │ │ └── TimelineMapper.xml │ │ │ └── test │ │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── metaserver │ │ │ ├── TestHoodieMetaserver.java │ │ │ └── store │ │ │ └── TestRelationalDBBasedStore.java │ ├── pom.xml │ └── src │ │ └── main │ │ └── thrift │ │ ├── bin │ │ ├── thrift_binary.sh │ │ ├── thrift_in_docker.sh │ │ └── thrift_in_mac_m1.sh │ │ └── hudi-metaserver.thrift └── pom.xml ├── hudi-spark-datasource ├── README.md ├── hudi-spark-common │ ├── pom.xml │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ ├── hudi │ │ │ │ ├── DataSourceUtils.java │ │ │ │ ├── async │ │ │ │ │ ├── SparkStreamingAsyncClusteringService.java │ │ │ │ │ └── SparkStreamingAsyncCompactService.java │ │ │ │ ├── commit │ │ │ │ │ ├── BaseDatasetBulkInsertCommitActionExecutor.java │ │ │ │ │ ├── DatasetBucketRescaleCommitActionExecutor.java │ │ │ │ │ ├── DatasetBulkInsertCommitActionExecutor.java │ │ │ │ │ ├── DatasetBulkInsertOverwriteCommitActionExecutor.java │ │ │ │ │ ├── DatasetBulkInsertOverwriteTableCommitActionExecutor.java │ │ │ │ │ └── HoodieStreamerDatasetBulkInsertCommitActionExecutor.java │ │ │ │ ├── internal │ │ │ │ │ ├── BaseDefaultSource.java │ │ │ │ │ ├── BaseWriterCommitMessage.java │ │ │ │ │ └── DataSourceInternalWriterHelper.java │ │ │ │ ├── spark │ │ │ │ │ └── internal │ │ │ │ │ │ ├── DefaultSource.java │ │ │ │ │ │ ├── HoodieBulkInsertDataInternalWriter.java │ │ │ │ │ │ ├── HoodieBulkInsertDataInternalWriterFactory.java │ │ │ │ │ │ ├── HoodieDataSourceInternalBatchWrite.java │ │ │ │ │ │ ├── HoodieDataSourceInternalBatchWriteBuilder.java │ │ │ │ │ │ ├── HoodieDataSourceInternalTable.java │ │ │ │ │ │ └── HoodieWriterCommitMessage.java │ │ │ │ └── sql │ │ │ │ │ └── InsertMode.java │ │ │ │ └── spark │ │ │ │ └── sql │ │ │ │ └── execution │ │ │ │ └── datasources │ │ │ │ └── parquet │ │ │ │ └── HoodieVectorizedParquetRecordReader.java │ │ ├── resources │ │ │ └── META-INF │ │ │ │ └── services │ │ │ │ └── org.apache.spark.sql.sources.DataSourceRegister │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ ├── hudi │ │ │ ├── AutoRecordKeyGenerationUtils.scala │ │ │ ├── AvroProjection.scala │ │ │ ├── BaseDefaultSource.scala │ │ │ ├── BaseFileOnlyRelation.scala │ │ │ ├── BloomFiltersIndexSupport.scala │ │ │ ├── BucketIndexSupport.scala │ │ │ ├── ColumnStatsIndexSupport.scala │ │ │ ├── DataSourceOptions.scala │ │ │ ├── DefaultSource.scala │ │ │ ├── EmptyRelation.scala │ │ │ ├── ExpressionIndexSupport.scala │ │ │ ├── FileSystemRelation.scala │ │ │ ├── HoodieBaseRelation.scala │ │ │ ├── HoodieBootstrapMORRDD.scala │ │ │ ├── HoodieBootstrapMORRelation.scala │ │ │ ├── HoodieBootstrapRDD.scala │ │ │ ├── HoodieBootstrapRelation.scala │ │ │ ├── HoodieCDCFileIndex.scala │ │ │ ├── HoodieCLIUtils.scala │ │ │ ├── HoodieCatalystUtils.scala │ │ │ ├── HoodieCreateRecordUtils.scala │ │ │ ├── HoodieDataSourceHelper.scala │ │ │ ├── HoodieEmptyRelation.scala │ │ │ ├── HoodieFileIndex.scala │ │ │ ├── HoodieHadoopFsRelationFactory.scala │ │ │ ├── HoodieIncrementalFileIndex.scala │ │ │ ├── HoodieMergeOnReadRDDV1.scala │ │ │ ├── HoodieMergeOnReadRDDV2.scala │ │ │ ├── HoodieSchemaUtils.scala │ │ │ ├── HoodieSparkConfUtils.scala │ │ │ ├── HoodieSparkSqlWriter.scala │ │ │ ├── HoodieStreamingSink.scala │ │ │ ├── HoodieWriterUtils.scala │ │ │ ├── IncrementalRelationV1.scala │ │ │ ├── IncrementalRelationV2.scala │ │ │ ├── Iterators.scala │ │ │ ├── MergeOnReadIncrementalRelationV1.scala │ │ │ ├── MergeOnReadIncrementalRelationV2.scala │ │ │ ├── MergeOnReadSnapshotRelation.scala │ │ │ ├── PartitionBucketIndexSupport.scala │ │ │ ├── PartitionDirectoryConverter.scala │ │ │ ├── PartitionStatsIndexSupport.scala │ │ │ ├── RecordLevelIndexSupport.scala │ │ │ ├── SecondaryIndexSupport.scala │ │ │ ├── SparkBaseIndexSupport.scala │ │ │ ├── SparkConfigs.scala │ │ │ ├── SparkFilterHelper.scala │ │ │ ├── SparkHoodieTableFileIndex.scala │ │ │ ├── TimelineRelation.scala │ │ │ ├── cdc │ │ │ │ ├── CDCFileGroupIterator.scala │ │ │ │ ├── CDCRelation.scala │ │ │ │ ├── HoodieCDCRDD.scala │ │ │ │ └── InternalRowToJsonStringConverter.scala │ │ │ ├── package.scala │ │ │ └── util │ │ │ │ ├── CachingIterator.scala │ │ │ │ └── SparkConfigUtils.scala │ │ │ └── spark │ │ │ ├── HoodieHadoopFSUtils.scala │ │ │ └── sql │ │ │ ├── BaseHoodieCatalystPlanUtils.scala │ │ │ ├── FileFormatUtilsForFileGroupReader.scala │ │ │ ├── HoodieSpark3CatalystExpressionUtils.scala │ │ │ ├── HoodieSparkCatalogUtils.scala │ │ │ ├── HoodieSparkTypeUtils.scala │ │ │ ├── ResolveInsertionBase.scala │ │ │ ├── avro │ │ │ ├── HoodieSparkAvroSchemaConverters.scala │ │ │ └── SchemaConverters.scala │ │ │ ├── catalyst │ │ │ ├── catalog │ │ │ │ └── HoodieCatalogTable.scala │ │ │ ├── plans │ │ │ │ └── logical │ │ │ │ │ ├── HoodieFileSystemViewTableValuedFunction.scala │ │ │ │ │ ├── HoodieMetadataTableValuedFunction.scala │ │ │ │ │ ├── HoodieQuery.scala │ │ │ │ │ ├── HoodieTableChanges.scala │ │ │ │ │ ├── HoodieTimelineTableValuedFunction.scala │ │ │ │ │ ├── HoodieUnaryLikeSham.scala │ │ │ │ │ ├── Index.scala │ │ │ │ │ └── TimeTravelRelation.scala │ │ │ └── trees │ │ │ │ └── HoodieLeafLike.scala │ │ │ ├── execution │ │ │ └── datasources │ │ │ │ ├── BaseHoodieNestedSchemaPruning.scala │ │ │ │ ├── orc │ │ │ │ └── SparkOrcReaderBase.scala │ │ │ │ └── parquet │ │ │ │ ├── HoodieFileGroupReaderBasedFileFormat.scala │ │ │ │ ├── LegacyHoodieParquetFileFormat.scala │ │ │ │ ├── ParquetSchemaEvolutionUtils.scala │ │ │ │ └── SparkParquetReaderBase.scala │ │ │ ├── hive │ │ │ └── HiveClientUtils.scala │ │ │ ├── hudi │ │ │ ├── DataSkippingUtils.scala │ │ │ ├── HoodieOptionConfig.scala │ │ │ ├── HoodieSqlCommonUtils.scala │ │ │ ├── ProvidesHoodieConfig.scala │ │ │ ├── analysis │ │ │ │ ├── HoodieSparkBaseAnalysis.scala │ │ │ │ └── TableValuedFunctions.scala │ │ │ ├── catalog │ │ │ │ ├── BasicStagedTable.scala │ │ │ │ ├── HoodieCatalog.scala │ │ │ │ ├── HoodieInternalV2Table.scala │ │ │ │ ├── HoodieStagedTable.scala │ │ │ │ └── TableCreationMode.java │ │ │ ├── command │ │ │ │ ├── AlterHoodieTableAddColumnsCommand.scala │ │ │ │ ├── AlterHoodieTableAddPartitionCommand.scala │ │ │ │ ├── AlterHoodieTableChangeColumnCommand.scala │ │ │ │ ├── AlterHoodieTableDropPartitionCommand.scala │ │ │ │ ├── AlterHoodieTableRenameCommand.scala │ │ │ │ ├── AlterTableCommand.scala │ │ │ │ ├── CreateHoodieTableCommand.scala │ │ │ │ ├── CreateHoodieTableLikeCommand.scala │ │ │ │ ├── DropHoodieTableCommand.scala │ │ │ │ ├── HoodieCommandMetrics.scala │ │ │ │ ├── HoodieLeafRunnableCommand.scala │ │ │ │ ├── HoodieSparkValidateDuplicateKeyRecordMerger.scala │ │ │ │ ├── MergeIntoKeyGenerator.scala │ │ │ │ ├── RepairHoodieTableCommand.scala │ │ │ │ ├── ShowHoodieCreateTableCommand.scala │ │ │ │ ├── ShowHoodieTablePartitionsCommand.scala │ │ │ │ ├── SqlKeyGenerator.scala │ │ │ │ ├── TruncateHoodieTableCommand.scala │ │ │ │ ├── exception │ │ │ │ │ └── HoodieAnalysisException.scala │ │ │ │ └── payload │ │ │ │ │ └── ExpressionPayload.scala │ │ │ └── streaming │ │ │ │ ├── HoodieMetadataLog.scala │ │ │ │ ├── HoodieOffsetRangeLimit.scala │ │ │ │ ├── HoodieSourceOffset.scala │ │ │ │ ├── HoodieStreamSourceV1.scala │ │ │ │ └── HoodieStreamSourceV2.scala │ │ │ └── vectorized │ │ │ └── ColumnarBatchUtils.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── TestHoodieSchemaUtils.java │ │ │ ├── TestHoodieWriterUtils.java │ │ │ └── testutils │ │ │ ├── LogFileColStatsTestUtil.java │ │ │ └── SparkDatasetTestUtils.java │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ ├── ScalaTestUtils.scala │ │ ├── TestDataSourceOptions.scala │ │ ├── TestRecordLevelIndexSupport.scala │ │ ├── TestSecondaryIndexSupport.scala │ │ ├── cdc │ │ │ └── TestInternalRowToJsonStringConverter.scala │ │ └── schema │ │ │ └── TestHoodieSparkSchemaUtils.scala │ │ └── spark │ │ ├── execution │ │ └── datasources │ │ │ └── parquet │ │ │ └── TestSparkFileFormatInternalRowReaderContext.scala │ │ └── sql │ │ ├── execution │ │ └── datasources │ │ │ ├── orc │ │ │ └── TestSparkOrcReaderFormat.scala │ │ │ └── parquet │ │ │ └── TestSparkParquetReaderFormat.scala │ │ ├── hive │ │ └── TestHiveClientUtils.scala │ │ └── hudi │ │ ├── TestHoodieFileIndex.scala │ │ ├── TestProvidesHoodieConfig.scala │ │ └── TestSparkConfigUtils.scala ├── hudi-spark │ ├── pom.xml │ ├── run_hoodie_app.sh │ ├── run_hoodie_generate_app.sh │ ├── run_hoodie_streaming_app.sh │ └── src │ │ ├── main │ │ ├── antlr4 │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── hudi │ │ │ │ └── spark │ │ │ │ └── sql │ │ │ │ └── parser │ │ │ │ └── HoodieSqlCommon.g4 │ │ ├── java │ │ │ └── org │ │ │ │ └── apache │ │ │ │ └── hudi │ │ │ │ ├── HoodieDataSourceHelpers.java │ │ │ │ ├── QuickstartUtils.java │ │ │ │ ├── bootstrap │ │ │ │ ├── SparkFullBootstrapDataProviderBase.java │ │ │ │ ├── SparkOrcBootstrapDataProvider.java │ │ │ │ └── SparkParquetBootstrapDataProvider.java │ │ │ │ └── cli │ │ │ │ ├── ArchiveExecutorUtils.java │ │ │ │ ├── BootstrapExecutorUtils.java │ │ │ │ ├── HDFSParquetImporterUtils.java │ │ │ │ └── SchemaProvider.java │ │ └── scala │ │ │ └── org │ │ │ └── apache │ │ │ └── spark │ │ │ └── sql │ │ │ ├── catalyst │ │ │ └── plans │ │ │ │ └── logical │ │ │ │ ├── Call.scala │ │ │ │ └── Compaction.scala │ │ │ ├── hudi │ │ │ ├── DeDupeType.scala │ │ │ ├── DedupeSparkJob.scala │ │ │ ├── HoodieSparkSessionExtension.scala │ │ │ ├── SparkHelpers.scala │ │ │ ├── analysis │ │ │ │ └── HoodieAnalysis.scala │ │ │ └── command │ │ │ │ ├── CallProcedureHoodieCommand.scala │ │ │ │ ├── CompactionHoodiePathCommand.scala │ │ │ │ ├── CompactionHoodieTableCommand.scala │ │ │ │ ├── CompactionShowHoodiePathCommand.scala │ │ │ │ ├── CompactionShowHoodieTableCommand.scala │ │ │ │ ├── IndexCommands.scala │ │ │ │ ├── UuidKeyGenerator.scala │ │ │ │ └── procedures │ │ │ │ ├── ArchiveCommitsProcedure.scala │ │ │ │ ├── BaseProcedure.scala │ │ │ │ ├── CleanupAuditLockProcedure.scala │ │ │ │ ├── CommitsCompareProcedure.scala │ │ │ │ ├── CopyToTableProcedure.scala │ │ │ │ ├── CopyToTempViewProcedure.scala │ │ │ │ ├── CreateMetadataTableProcedure.scala │ │ │ │ ├── CreateSavepointProcedure.scala │ │ │ │ ├── DeleteMarkerProcedure.scala │ │ │ │ ├── DeleteMetadataTableProcedure.scala │ │ │ │ ├── DeleteSavepointProcedure.scala │ │ │ │ ├── DropPartitionProcedure.scala │ │ │ │ ├── ExportInstantsProcedure.scala │ │ │ │ ├── HdfsParquetImportProcedure.scala │ │ │ │ ├── HelpProcedure.scala │ │ │ │ ├── HiveSyncProcedure.scala │ │ │ │ ├── HoodieProcedureFilterUtils.scala │ │ │ │ ├── HoodieProcedureUtils.scala │ │ │ │ ├── HoodieProcedures.scala │ │ │ │ ├── InitMetadataTableProcedure.scala │ │ │ │ ├── PartitionBucketIndexManager.scala │ │ │ │ ├── Procedure.scala │ │ │ │ ├── ProcedureArgs.scala │ │ │ │ ├── ProcedureBuilder.scala │ │ │ │ ├── ProcedureParameter.scala │ │ │ │ ├── ProcedureParameterImpl.scala │ │ │ │ ├── RepairAddpartitionmetaProcedure.scala │ │ │ │ ├── RepairCorruptedCleanFilesProcedure.scala │ │ │ │ ├── RepairDeduplicateProcedure.scala │ │ │ │ ├── RepairMigratePartitionMetaProcedure.scala │ │ │ │ ├── RepairOverwriteHoodiePropsProcedure.scala │ │ │ │ ├── RollbackToInstantTimeProcedure.scala │ │ │ │ ├── RollbackToSavepointProcedure.scala │ │ │ │ ├── RunBootstrapProcedure.scala │ │ │ │ ├── RunCleanProcedure.scala │ │ │ │ ├── RunClusteringProcedure.scala │ │ │ │ ├── RunCompactionProcedure.scala │ │ │ │ ├── RunRollbackInflightTableServiceProcedure.scala │ │ │ │ ├── RunTTLProcedure.scala │ │ │ │ ├── SetAuditLockProcedure.scala │ │ │ │ ├── ShowArchivedCommitsProcedure.scala │ │ │ │ ├── ShowAuditLockStatusProcedure.scala │ │ │ │ ├── ShowBootstrapMappingProcedure.scala │ │ │ │ ├── ShowBootstrapPartitionsProcedure.scala │ │ │ │ ├── ShowCleansPlanProcedure.scala │ │ │ │ ├── ShowCleansProcedure.scala │ │ │ │ ├── ShowClusteringProcedure.scala │ │ │ │ ├── ShowColumnStatsOverlapProcedure.scala │ │ │ │ ├── ShowCommitExtraMetadataProcedure.scala │ │ │ │ ├── ShowCommitFilesProcedure.scala │ │ │ │ ├── ShowCommitPartitionsProcedure.scala │ │ │ │ ├── ShowCommitWriteStatsProcedure.scala │ │ │ │ ├── ShowCommitsProcedure.scala │ │ │ │ ├── ShowCompactionProcedure.scala │ │ │ │ ├── ShowFileStatusProcedure.scala │ │ │ │ ├── ShowFileSystemViewProcedure.scala │ │ │ │ ├── ShowFsPathDetailProcedure.scala │ │ │ │ ├── ShowHoodieLogFileMetadataProcedure.scala │ │ │ │ ├── ShowHoodieLogFileRecordsProcedure.scala │ │ │ │ ├── ShowInvalidParquetProcedure.scala │ │ │ │ ├── ShowMetadataTableColumnStatsProcedure.scala │ │ │ │ ├── ShowMetadataTableFilesProcedure.scala │ │ │ │ ├── ShowMetadataTablePartitionsProcedure.scala │ │ │ │ ├── ShowMetadataTableStatsProcedure.scala │ │ │ │ ├── ShowRollbacksProcedure.scala │ │ │ │ ├── ShowSavepointsProcedure.scala │ │ │ │ ├── ShowTablePropertiesProcedure.scala │ │ │ │ ├── ShowTimelineProcedure.scala │ │ │ │ ├── StatsFileSizeProcedure.scala │ │ │ │ ├── StatsWriteAmplificationProcedure.scala │ │ │ │ ├── TruncateTableProcedure.scala │ │ │ │ ├── UpgradeOrDowngradeProcedure.scala │ │ │ │ ├── ValidateAuditLockProcedure.scala │ │ │ │ ├── ValidateHoodieSyncProcedure.scala │ │ │ │ └── ValidateMetadataTableFilesProcedure.scala │ │ │ └── parser │ │ │ ├── HoodieCommonSqlParser.scala │ │ │ └── HoodieSqlCommonAstBuilder.scala │ │ └── test │ │ ├── java │ │ ├── HoodieJavaApp.java │ │ ├── HoodieJavaGenerateApp.java │ │ ├── HoodieJavaStreamingApp.java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── ColumnStatsIndexHelper.java │ │ │ ├── TestDataSourceReadWithDeletes.java │ │ │ ├── TestDataSourceUtils.java │ │ │ ├── TestDecimalTypeDataWorkflow.scala │ │ │ ├── TestDefaultSparkRecordMerger.java │ │ │ ├── TestHoodieMergeHandleWithSparkMerger.java │ │ │ ├── TestMetadataTableSupport.java │ │ │ ├── TestPositionBasedFileGroupRecordBuffer.java │ │ │ ├── TestQuickstartUtils.java │ │ │ ├── client │ │ │ ├── TestHoodieClientMultiWriter.java │ │ │ ├── TestMultiWriterWithPreferWriterIngestion.java │ │ │ ├── TestTableSchemaEvolution.java │ │ │ ├── functional │ │ │ │ ├── TestDataValidationCheckForLogCompactionActions.java │ │ │ │ ├── TestHoodieClientOnCopyOnWriteStorage.java │ │ │ │ ├── TestHoodieClientOnMergeOnReadStorage.java │ │ │ │ ├── TestMetadataUtilRLIandSIRecordGeneration.java │ │ │ │ └── TestRemoteFileSystemViewWithMetadataTable.java │ │ │ └── model │ │ │ │ └── TestHoodieInternalRow.java │ │ │ ├── common │ │ │ └── table │ │ │ │ └── timeline │ │ │ │ └── TestHoodieInstantTimeGenerator.java │ │ │ ├── execution │ │ │ └── bulkinsert │ │ │ │ ├── TestBulkInsertInternalPartitioner.java │ │ │ │ ├── TestBulkInsertInternalPartitionerForRows.java │ │ │ │ └── TestRDDSimpleBucketBulkInsertPartitioner.java │ │ │ ├── functional │ │ │ ├── SparkSQLCoreFlow.java │ │ │ ├── TestBootstrap.java │ │ │ ├── TestBootstrapRead.java │ │ │ ├── TestBootstrapReadBase.java │ │ │ ├── TestBufferedRecordMerger.java │ │ │ ├── TestColStatsRecordWithMetadataRecord.java │ │ │ ├── TestConsistentBucketIndex.java │ │ │ ├── TestDataSkippingWithMORColstats.java │ │ │ ├── TestFiltersInFileGroupReader.java │ │ │ ├── TestGlobalIndexEnableUpdatePartitions.java │ │ │ ├── TestHiveTableSchemaEvolution.java │ │ │ ├── TestHoodieBackedMetadata.java │ │ │ ├── TestHoodieDatasetBulkInsertHelper.java │ │ │ ├── TestHoodieFileSystemViews.java │ │ │ ├── TestHoodieIndex.java │ │ │ ├── TestHoodieSparkMergeOnReadTableClustering.java │ │ │ ├── TestIncrementalQueries.java │ │ │ ├── TestOrcBootstrap.java │ │ │ ├── TestSavepointRestoreMergeOnRead.java │ │ │ ├── TestSparkBinaryCopyClusteringAndValidationMeta.java │ │ │ ├── TestSparkClusteringCornerCases.java │ │ │ ├── TestSparkConsistentBucketClustering.java │ │ │ ├── TestSparkOrcReader.java │ │ │ ├── TestSparkParquetReader.java │ │ │ ├── TestSparkSortAndSizeClustering.java │ │ │ └── TestWriteClient.java │ │ │ ├── internal │ │ │ └── HoodieBulkInsertInternalWriterTestBase.java │ │ │ ├── io │ │ │ ├── CustomMerger.java │ │ │ ├── CustomPayload.java │ │ │ ├── TestAppendHandle.java │ │ │ ├── TestCreateHandle.java │ │ │ ├── TestMergeHandle.java │ │ │ ├── TestMetadataWriterCommit.java │ │ │ └── storage │ │ │ │ └── row │ │ │ │ ├── TestHoodieInternalRowParquetWriter.java │ │ │ │ └── TestHoodieRowCreateHandle.java │ │ │ ├── spark │ │ │ └── internal │ │ │ │ ├── TestHoodieBulkInsertDataInternalWriter.java │ │ │ │ └── TestHoodieDataSourceInternalBatchWrite.java │ │ │ ├── table │ │ │ ├── TestHoodieMergeOnReadTable.java │ │ │ ├── action │ │ │ │ ├── cluster │ │ │ │ │ └── TestIncrementalClustering.java │ │ │ │ ├── compact │ │ │ │ │ ├── TestAsyncCompaction.java │ │ │ │ │ ├── TestHoodieCompactor.java │ │ │ │ │ ├── TestInlineCompaction.java │ │ │ │ │ └── strategy │ │ │ │ │ │ └── SmallBoundedIOCompactionStrategy.java │ │ │ │ └── rollback │ │ │ │ │ ├── TestCopyOnWriteRollbackActionExecutor.java │ │ │ │ │ └── TestMergeOnReadRollbackActionExecutor.java │ │ │ ├── functional │ │ │ │ ├── TestHoodieSparkCopyOnWriteTableRollbackTableVersionSix.java │ │ │ │ ├── TestHoodieSparkMergeOnReadTableCompaction.java │ │ │ │ ├── TestHoodieSparkMergeOnReadTableIncrementalRead.java │ │ │ │ ├── TestHoodieSparkMergeOnReadTableInsertUpdateDelete.java │ │ │ │ ├── TestHoodieSparkMergeOnReadTableRollback.java │ │ │ │ ├── TestHoodieSparkRollback.java │ │ │ │ └── TestSparkNonBlockingConcurrencyControl.java │ │ │ └── upgrade │ │ │ │ └── TestUpgradeDowngrade.java │ │ │ └── testutils │ │ │ ├── DataSourceTestUtils.java │ │ │ └── HoodieSparkClientTestBase.java │ │ ├── resources │ │ ├── META-INF │ │ │ └── services │ │ │ │ └── org.apache.hudi.common.HoodieTableFormat │ │ ├── exampleEvolvedSchema.txt │ │ ├── exampleSchema.txt │ │ ├── external-config │ │ │ └── hudi-defaults.conf │ │ ├── index │ │ │ └── colstats │ │ │ │ ├── another-input-table-json │ │ │ │ ├── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── part-00001-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── part-00002-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ └── part-00003-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── column-stats-index-table-short-schema.json │ │ │ │ ├── column-stats-index-table.json │ │ │ │ ├── cow-bootstrap-rollback1-column-stats-index-table.json │ │ │ │ ├── cow-bootstrap-rollback1-partition-stats-index-table.json │ │ │ │ ├── cow-bootstrap0-partition-stats-index-table.json │ │ │ │ ├── cow-bootstrap1-column-stats-index-table.json │ │ │ │ ├── cow-bootstrap1-partition-stats-index-table.json │ │ │ │ ├── cow-bootstrap2-column-stats-index-table.json │ │ │ │ ├── cow-bootstrap2-partition-stats-index-table.json │ │ │ │ ├── cow-bootstrap_minus1-partition-stats-index-table.json │ │ │ │ ├── cow-clean1-column-stats-index-table.json │ │ │ │ ├── cow-table-nested-1.json │ │ │ │ ├── cow-table-nested-2.json │ │ │ │ ├── cow-updated2-column-stats-index-table-short-schema.json │ │ │ │ ├── cow-updated2-column-stats-index-table.json │ │ │ │ ├── cow-updated3-column-stats-index-table.json │ │ │ │ ├── cow-updated4-column-stats-index-table.json │ │ │ │ ├── delete-input-table-json │ │ │ │ └── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── evolved-cols-input-table-json │ │ │ │ ├── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ └── part-00001-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── input-table-json-partition-pruning │ │ │ │ ├── part-00000-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ ├── part-00001-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ ├── part-00002-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ └── part-00003-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ ├── input-table-json │ │ │ │ ├── part-00000-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ ├── part-00001-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ ├── part-00002-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ └── part-00003-4468afca-8a37-4ae8-a150-0c2fd3361080-c000.json │ │ │ │ ├── mor-bootstrap-rollback1-column-stats-index-table.json │ │ │ │ ├── mor-bootstrap1-column-stats-index-table.json │ │ │ │ ├── mor-bootstrap1-partition-stats-index-table.json │ │ │ │ ├── mor-bootstrap2-column-stats-index-table.json │ │ │ │ ├── mor-bootstrap2-partition-stats-index-table.json │ │ │ │ ├── mor-clean1-column-stats-index-table.json │ │ │ │ ├── mor-delete-block1-column-stats-index-table.json │ │ │ │ ├── mor-table-nested-1.json │ │ │ │ ├── mor-table-nested-2.json │ │ │ │ ├── mor-updated2-column-stats-index-table-short-schema.json │ │ │ │ ├── mor-updated2-column-stats-index-table.json │ │ │ │ ├── mor-updated3-column-stats-index-table.json │ │ │ │ ├── mor-updated4-column-stats-index-table.json │ │ │ │ ├── partial-another-input-table-json │ │ │ │ ├── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── part-00001-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── part-00002-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ └── part-00003-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── partial-column-stats-index-table.json │ │ │ │ ├── partition-stats-index-table.json │ │ │ │ ├── update-input-table-json │ │ │ │ └── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── update2-input-table-json │ │ │ │ └── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── update3-input-table-json │ │ │ │ └── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── update4-input-table-json │ │ │ │ └── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── update5-input-table-json │ │ │ │ └── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── update6-input-table-json │ │ │ │ └── part-00000-7e680484-e7e1-48b6-8289-1a7c483b530b-c000.json │ │ │ │ ├── updated-column-stats-index-table-short-schema.json │ │ │ │ ├── updated-column-stats-index-table.json │ │ │ │ ├── updated-partial-column-stats-index-table.json │ │ │ │ ├── updated-partition-stats-2-index-table.json │ │ │ │ ├── updated-partition-stats-3-index-table.json │ │ │ │ ├── updated-partition-stats-4-index-table.json │ │ │ │ └── updated-partition-stats-index-table.json │ │ ├── schema_with_logical_types.avsc │ │ ├── sql-statements.sql │ │ ├── table-config.properties │ │ ├── trips_logical_types_json_cow_read_v6.zip │ │ ├── trips_logical_types_json_cow_read_v8.zip │ │ ├── trips_logical_types_json_cow_read_v9.zip │ │ ├── trips_logical_types_json_mor_read_v6.zip │ │ ├── trips_logical_types_json_mor_read_v6_parquet_log.zip │ │ ├── trips_logical_types_json_mor_read_v8.zip │ │ ├── trips_logical_types_json_mor_read_v8_parquet_log.zip │ │ ├── trips_logical_types_json_mor_read_v9.zip │ │ ├── trips_logical_types_json_mor_read_v9_parquet_log.zip │ │ └── upgrade-downgrade-fixtures │ │ │ ├── README.md │ │ │ ├── complex-keygen-tables │ │ │ ├── hudi-v6-table-complex-keygen.zip │ │ │ ├── hudi-v8-table-complex-keygen.zip │ │ │ └── hudi-v9-table-complex-keygen.zip │ │ │ ├── cow-tables │ │ │ └── hudi-v8-table-cow.zip │ │ │ ├── generate-fixtures.sh │ │ │ ├── mor-tables │ │ │ ├── hudi-v6-table-mor.zip │ │ │ ├── hudi-v8-table-mor.zip │ │ │ └── hudi-v9-table-mor.zip │ │ │ ├── payload-tables │ │ │ ├── hudi-v6-table-payload-awsdms.zip │ │ │ ├── hudi-v6-table-payload-default.zip │ │ │ ├── hudi-v6-table-payload-eventtime.zip │ │ │ ├── hudi-v6-table-payload-mysql.zip │ │ │ ├── hudi-v6-table-payload-overwrite.zip │ │ │ ├── hudi-v6-table-payload-overwritenondefaults.zip │ │ │ ├── hudi-v6-table-payload-partial.zip │ │ │ └── hudi-v6-table-payload-postgres.zip │ │ │ ├── scala-templates │ │ │ ├── generate-fixture-complex-keygen-v9.scala │ │ │ ├── generate-fixture-complex-keygen.scala │ │ │ ├── generate-fixture-cow.scala │ │ │ ├── generate-fixture-mor-v9.scala │ │ │ ├── generate-fixture-mor.scala │ │ │ ├── generate-fixture-payload.scala │ │ │ ├── generate-fixture-v9.scala │ │ │ └── generate-fixture.scala │ │ │ └── unsupported-upgrade-tables │ │ │ ├── hudi-v4-table.zip │ │ │ ├── hudi-v5-table.zip │ │ │ ├── hudi-v6-table.zip │ │ │ ├── hudi-v8-table.zip │ │ │ └── hudi-v9-table.zip │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── TestIncrementalQueryWithArchivedInstants.scala │ │ ├── hudi │ │ ├── HoodieSparkWriterTestBase.scala │ │ ├── ScalaAssertionSupport.scala │ │ ├── SparkDatasetMixin.scala │ │ ├── TestAutoKeyGenForSQL.scala │ │ ├── TestAvroConversionHelper.scala │ │ ├── TestAvroConversionUtils.scala │ │ ├── TestAvroSchemaResolutionSupport.scala │ │ ├── TestConvertFilterToCatalystExpression.scala │ │ ├── TestDataSkippingUtils.scala │ │ ├── TestDataSourceDefaults.scala │ │ ├── TestDataSourceOptions.scala │ │ ├── TestGenericRecordAndRowConsistency.scala │ │ ├── TestHoodieDataSourceHelper.scala │ │ ├── TestHoodieFileIndex.scala │ │ ├── TestHoodieParquetBloom.scala │ │ ├── TestHoodieRelations.scala │ │ ├── TestHoodieSparkSqlWriter.scala │ │ ├── TestHoodieSparkSqlWriterPartitionTTL.scala │ │ ├── TestHoodieSparkSqlWriterUtc.scala │ │ ├── TestHoodieSparkSqlWriterWithTestFormat.scala │ │ ├── TestHoodieSparkUtils.scala │ │ ├── TestInsertDedupPolicy.scala │ │ ├── TestMultipleTableVersionWriting.scala │ │ ├── TestParquetReaderCompatibility.scala │ │ ├── TestPartitionDirectoryConverter.scala │ │ ├── TestSparkFilterHelper.scala │ │ ├── TestTableSchemaResolverWithSparkSQL.scala │ │ ├── common │ │ │ ├── model │ │ │ │ └── TestHoodieRecordSerialization.scala │ │ │ └── table │ │ │ │ └── read │ │ │ │ ├── TestHoodieFileGroupReaderOnSpark.scala │ │ │ │ └── TestSpark35RecordPositionMetadataColumn.scala │ │ ├── functional │ │ │ ├── ColumnStatIndexTestBase.scala │ │ │ ├── CommonOptionUtils.scala │ │ │ ├── HoodieStatsIndexTestBase.scala │ │ │ ├── PartitionStatsIndexTestBase.scala │ │ │ ├── RecordLevelIndexTestBase.scala │ │ │ ├── TestAutoGenerationOfRecordKeys.scala │ │ │ ├── TestBasicSchemaEvolution.scala │ │ │ ├── TestBloomFiltersIndexSupport.scala │ │ │ ├── TestBucketIndexSupport.scala │ │ │ ├── TestCOWDataSource.scala │ │ │ ├── TestCOWDataSourceStorage.scala │ │ │ ├── TestColumnStatsIndex.scala │ │ │ ├── TestColumnStatsIndexWithSQL.scala │ │ │ ├── TestDataSourceForBootstrap.scala │ │ │ ├── TestEightToNineUpgrade.scala │ │ │ ├── TestEmptyCommit.scala │ │ │ ├── TestGetPartitionValuesFromPath.scala │ │ │ ├── TestGlobalRecordLevelIndex.scala │ │ │ ├── TestGlobalRecordLevelIndexTableVersionSix.scala │ │ │ ├── TestGlobalRecordLevelIndexWithSQL.scala │ │ │ ├── TestHoodieActiveTimeline.scala │ │ │ ├── TestHoodieMultipleBaseFileFormat.scala │ │ │ ├── TestIncrementalReadByStateTransitionTime.scala │ │ │ ├── TestIncrementalReadWithFullTableScan.scala │ │ │ ├── TestLayoutOptimization.scala │ │ │ ├── TestMORDataSource.scala │ │ │ ├── TestMORDataSourceStorage.scala │ │ │ ├── TestMORDataSourceWithBucketIndex.scala │ │ │ ├── TestMetadataRecordIndex.scala │ │ │ ├── TestMetadataTableWithSparkDataSource.scala │ │ │ ├── TestMetricsReporter.scala │ │ │ ├── TestNestedPartitionPathSchema.scala │ │ │ ├── TestParquetColumnProjection.scala │ │ │ ├── TestPartialUpdateAvroPayload.scala │ │ │ ├── TestPartitionBucketIndexSupport.scala │ │ │ ├── TestPartitionStatsIndex.scala │ │ │ ├── TestPartitionStatsIndexWithSql.scala │ │ │ ├── TestPartitionStatsPruning.scala │ │ │ ├── TestPayloadDeprecationFlow.scala │ │ │ ├── TestRecordLevelIndex.scala │ │ │ ├── TestSecondaryIndexDataTypes.scala │ │ │ ├── TestSecondaryIndexPruning.scala │ │ │ ├── TestSevenToEightUpgrade.scala │ │ │ ├── TestSixToFiveDowngradeHandler.scala │ │ │ ├── TestSparkDataSource.scala │ │ │ ├── TestSparkDataSourceDAGExecution.scala │ │ │ ├── TestSparkSqlCoreFlow.scala │ │ │ ├── TestSparkSqlWithCustomKeyGenerator.scala │ │ │ ├── TestSparkSqlWithTimestampKeyGenerator.scala │ │ │ ├── TestSqlStatement.scala │ │ │ ├── TestStreamSourceReadByStateTransitionTime.scala │ │ │ ├── TestStreamingSource.scala │ │ │ ├── TestStructuredStreaming.scala │ │ │ ├── TestTimeTravelQuery.scala │ │ │ ├── TestWriteTableVersionConfig.scala │ │ │ └── cdc │ │ │ │ ├── HoodieCDCTestBase.scala │ │ │ │ ├── TestCDCDataFrameSuite.scala │ │ │ │ └── TestCDCStreamingSuite.scala │ │ └── util │ │ │ ├── JavaConversions.scala │ │ │ └── TestSparkInternalSchemaConverter.scala │ │ └── spark │ │ ├── hudi │ │ └── benchmark │ │ │ ├── HoodieBenchmark.scala │ │ │ ├── HoodieBenchmarkBase.scala │ │ │ └── HoodieBenchmarks.scala │ │ └── sql │ │ ├── avro │ │ ├── TestAvroSerDe.scala │ │ └── TestSchemaConverters.scala │ │ ├── execution │ │ └── benchmark │ │ │ ├── AvroSerDerBenchmark.scala │ │ │ ├── BoundInMemoryExecutorBenchmark.scala │ │ │ ├── CowTableReadBenchmark.scala │ │ │ ├── CreateHandleBenchmark.scala │ │ │ ├── LSMTimelineReadBenchmark.scala │ │ │ ├── ReadAndWriteWithoutAvroBenchmark.scala │ │ │ └── SpaceCurveOptimizeBenchmark.scala │ │ └── hudi │ │ ├── analysis │ │ ├── TestHoodiePruneFileSourcePartitions.scala │ │ └── TestMergeIntoHoodieTableCommand.scala │ │ ├── catalog │ │ ├── MockPolarisSparkCatalog.scala │ │ └── TestPolarisHoodieCatalogDelegation.scala │ │ ├── command │ │ └── TestHoodieCommandMetrics.scala │ │ ├── common │ │ ├── HoodieSparkSqlTestBase.scala │ │ ├── TestHoodieDataUtils.scala │ │ ├── TestHoodieInternalRowUtils.scala │ │ ├── TestHoodieOptionConfig.scala │ │ ├── TestLazyPartitionPathFetching.scala │ │ ├── TestNestedSchemaPruningOptimization.scala │ │ ├── TestPartitionPushDownWhenListingPaths.scala │ │ ├── TestSqlConf.scala │ │ ├── TestTableColumnTypeMismatch.scala │ │ └── TestVectorizedReadWithSchemaEvolution.scala │ │ ├── ddl │ │ ├── TestAlterTable.scala │ │ ├── TestAlterTableAddPartition.scala │ │ ├── TestAlterTableDropPartition.scala │ │ ├── TestCreateTable.scala │ │ ├── TestDropTable.scala │ │ ├── TestRepairTable.scala │ │ ├── TestShowPartitions.scala │ │ ├── TestSpark3DDL.scala │ │ └── TestTruncateTable.scala │ │ ├── dml │ │ ├── insert │ │ │ ├── TestInsertTable.scala │ │ │ ├── TestInsertTable2.scala │ │ │ ├── TestInsertTable3.scala │ │ │ ├── TestInsertTable4.scala │ │ │ ├── TestInsertTable5.scala │ │ │ └── TestInsertTableWithPartitionBucketIndex.scala │ │ └── others │ │ │ ├── TestDeleteFromTable.scala │ │ │ ├── TestDeleteTable.scala │ │ │ ├── TestHoodieTableValuedFunction.scala │ │ │ ├── TestMergeIntoLogOnlyTable.scala │ │ │ ├── TestMergeIntoTable.scala │ │ │ ├── TestMergeIntoTable2.scala │ │ │ ├── TestMergeIntoTableWithNonRecordKeyField.scala │ │ │ ├── TestMergeModeCommitTimeOrdering.scala │ │ │ ├── TestMergeModeEventTimeOrdering.scala │ │ │ ├── TestPartialUpdateForMergeInto.scala │ │ │ ├── TestTimeTravelTable.scala │ │ │ └── TestUpdateTable.scala │ │ ├── feature │ │ ├── TestCDCForSparkSQL.scala │ │ ├── TestCompactionTable.scala │ │ ├── TestDataSkippingQuery.scala │ │ ├── TestQueryMergeOnReadOptimizedTable.scala │ │ └── index │ │ │ ├── TestExpressionIndex.scala │ │ │ ├── TestGlobalIndex.scala │ │ │ ├── TestHoodieBackedTableMetadataIndexLookup.scala │ │ │ ├── TestIndexSyntax.scala │ │ │ └── TestSecondaryIndex.scala │ │ └── procedure │ │ ├── HoodieSparkProcedureTestBase.scala │ │ ├── TestArchiveCommitsProcedure.scala │ │ ├── TestBootstrapProcedure.scala │ │ ├── TestCallCommandParser.scala │ │ ├── TestCallProcedure.scala │ │ ├── TestCleanProcedure.scala │ │ ├── TestCleanupAuditLockProcedure.scala │ │ ├── TestClusteringBinaryCopyStrategy.scala │ │ ├── TestClusteringProcedure.scala │ │ ├── TestCommitsProcedure.scala │ │ ├── TestCompactionProcedure.scala │ │ ├── TestCopyToTableProcedure.scala │ │ ├── TestCopyToTempViewProcedure.scala │ │ ├── TestDropPartitionProcedure.scala │ │ ├── TestExportInstantsProcedure.scala │ │ ├── TestFsViewProcedure.scala │ │ ├── TestHdfsParquetImportProcedure.scala │ │ ├── TestHelpProcedure.scala │ │ ├── TestHoodieLogFileProcedure.scala │ │ ├── TestMetadataProcedure.scala │ │ ├── TestRepairsProcedure.scala │ │ ├── TestRunRollbackInflightTableServiceProcedure.scala │ │ ├── TestSavepointsProcedure.scala │ │ ├── TestSetAuditLockProcedure.scala │ │ ├── TestShowAuditLockStatusProcedure.scala │ │ ├── TestShowCleansProcedures.scala │ │ ├── TestShowFileStatusProcedure.scala │ │ ├── TestShowFsPathDetailProcedure.scala │ │ ├── TestShowInvalidParquetProcedure.scala │ │ ├── TestShowTablePropertiesProcedure.scala │ │ ├── TestShowTimelineTableProcedure.scala │ │ ├── TestStatsProcedure.scala │ │ ├── TestTTLProcedure.scala │ │ ├── TestTruncateTableProcedure.scala │ │ ├── TestUpgradeOrDowngradeProcedure.scala │ │ └── TestValidateAuditLockProcedure.scala ├── hudi-spark3-common │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── client │ │ │ └── model │ │ │ └── Spark3HoodieInternalRow.java │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ ├── Spark3HoodiePartitionCDCFileGroupMapping.scala │ │ ├── Spark3HoodiePartitionFileSliceMapping.scala │ │ ├── Spark3HoodiePartitionValues.scala │ │ └── Spark3HoodieUTF8String.scala │ │ └── spark │ │ └── sql │ │ ├── Spark3DataFrameUtil.scala │ │ ├── Spark3HoodieUTF8StringFactory.scala │ │ ├── Spark3HoodieUnsafeUtils.scala │ │ ├── adapter │ │ └── BaseSpark3Adapter.scala │ │ └── hudi │ │ ├── analysis │ │ └── Spark3HoodiePruneFileSourcePartitions.scala │ │ └── command │ │ ├── CreateHoodieTableAsSelectCommand.scala │ │ ├── DeleteHoodieTableCommand.scala │ │ ├── InsertIntoHoodieTableCommand.scala │ │ ├── MergeIntoHoodieTableCommand.scala │ │ └── UpdateHoodieTableCommand.scala ├── hudi-spark3.3.x │ ├── pom.xml │ └── src │ │ └── main │ │ ├── antlr4 │ │ ├── imports │ │ │ └── SqlBase.g4 │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── spark │ │ │ └── sql │ │ │ └── parser │ │ │ └── HoodieSqlBase.g4 │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ └── Spark33HoodieFileScanRDD.scala │ │ └── spark │ │ └── sql │ │ ├── HoodieSpark33CatalystExpressionUtils.scala │ │ ├── HoodieSpark33CatalystPlanUtils.scala │ │ ├── HoodieSpark33SchemaUtils.scala │ │ ├── adapter │ │ └── Spark3_3Adapter.scala │ │ ├── avro │ │ ├── AvroDeserializer.scala │ │ ├── AvroSerializer.scala │ │ ├── AvroUtils.scala │ │ ├── HoodieSpark3_3AvroDeserializer.scala │ │ └── HoodieSpark3_3AvroSerializer.scala │ │ ├── execution │ │ └── datasources │ │ │ ├── HoodieSpark33PartitionedFileUtils.scala │ │ │ ├── Spark33NestedSchemaPruning.scala │ │ │ ├── orc │ │ │ └── Spark33OrcReader.scala │ │ │ └── parquet │ │ │ ├── Spark33DataSourceUtils.scala │ │ │ ├── Spark33LegacyHoodieParquetFileFormat.scala │ │ │ └── Spark33ParquetReader.scala │ │ ├── hudi │ │ ├── Spark33ResolveHudiAlterTableCommand.scala │ │ └── analysis │ │ │ └── HoodieSpark33Analysis.scala │ │ └── parser │ │ ├── HoodieSpark3_3ExtendedSqlAstBuilder.scala │ │ └── HoodieSpark3_3ExtendedSqlParser.scala ├── hudi-spark3.4.x │ ├── pom.xml │ └── src │ │ └── main │ │ ├── antlr4 │ │ ├── imports │ │ │ └── SqlBase.g4 │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── spark │ │ │ └── sql │ │ │ └── parser │ │ │ └── HoodieSqlBase.g4 │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ └── Spark34HoodieFileScanRDD.scala │ │ └── spark │ │ └── sql │ │ ├── HoodieSpark34CatalystExpressionUtils.scala │ │ ├── HoodieSpark34CatalystPlanUtils.scala │ │ ├── HoodieSpark34SchemaUtils.scala │ │ ├── adapter │ │ └── Spark3_4Adapter.scala │ │ ├── avro │ │ ├── AvroDeserializer.scala │ │ ├── AvroSerializer.scala │ │ ├── AvroUtils.scala │ │ ├── HoodieSpark3_4AvroDeserializer.scala │ │ └── HoodieSpark3_4AvroSerializer.scala │ │ ├── execution │ │ └── datasources │ │ │ ├── HoodieSpark34PartitionedFileUtils.scala │ │ │ ├── Spark34NestedSchemaPruning.scala │ │ │ ├── orc │ │ │ └── Spark34OrcReader.scala │ │ │ └── parquet │ │ │ ├── Spark34DataSourceUtils.scala │ │ │ ├── Spark34LegacyHoodieParquetFileFormat.scala │ │ │ └── Spark34ParquetReader.scala │ │ ├── hudi │ │ ├── Spark34ResolveHudiAlterTableCommand.scala │ │ └── analysis │ │ │ └── HoodieSpark34Analysis.scala │ │ └── parser │ │ ├── HoodieSpark3_4ExtendedSqlAstBuilder.scala │ │ └── HoodieSpark3_4ExtendedSqlParser.scala ├── hudi-spark3.5.x │ ├── pom.xml │ └── src │ │ └── main │ │ ├── antlr4 │ │ ├── imports │ │ │ └── SqlBase.g4 │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── spark │ │ │ └── sql │ │ │ └── parser │ │ │ └── HoodieSqlBase.g4 │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ └── Spark35HoodieFileScanRDD.scala │ │ └── spark │ │ └── sql │ │ ├── HoodieSpark35CatalystExpressionUtils.scala │ │ ├── HoodieSpark35CatalystPlanUtils.scala │ │ ├── HoodieSpark35SchemaUtils.scala │ │ ├── adapter │ │ └── Spark3_5Adapter.scala │ │ ├── avro │ │ ├── AvroDeserializer.scala │ │ ├── AvroSerializer.scala │ │ ├── AvroUtils.scala │ │ ├── HoodieSpark3_5AvroDeserializer.scala │ │ └── HoodieSpark3_5AvroSerializer.scala │ │ ├── execution │ │ └── datasources │ │ │ ├── HoodieSpark35PartitionedFileUtils.scala │ │ │ ├── Spark35NestedSchemaPruning.scala │ │ │ ├── orc │ │ │ └── Spark35OrcReader.scala │ │ │ └── parquet │ │ │ ├── Spark35DataSourceUtils.scala │ │ │ ├── Spark35LegacyHoodieParquetFileFormat.scala │ │ │ └── Spark35ParquetReader.scala │ │ ├── hudi │ │ ├── Spark35ResolveHudiAlterTableCommand.scala │ │ └── analysis │ │ │ └── HoodieSpark35Analysis.scala │ │ └── parser │ │ ├── HoodieSpark3_5ExtendedSqlAstBuilder.scala │ │ └── HoodieSpark3_5ExtendedSqlParser.scala ├── hudi-spark4-common │ ├── pom.xml │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── client │ │ │ └── model │ │ │ └── Spark4HoodieInternalRow.java │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ ├── Spark4HoodiePartitionCDCFileGroupMapping.scala │ │ ├── Spark4HoodiePartitionFileSliceMapping.scala │ │ ├── Spark4HoodiePartitionValues.scala │ │ └── Spark4HoodieUTF8String.scala │ │ └── spark │ │ └── sql │ │ ├── ExpressionColumnNodeWrapper.scala │ │ ├── HoodieSpark4CatalystExpressionUtils.scala │ │ ├── Spark4DataFrameUtil.scala │ │ ├── Spark4HoodieUTF8StringFactory.scala │ │ ├── Spark4HoodieUnsafeUtils.scala │ │ ├── adapter │ │ └── BaseSpark4Adapter.scala │ │ └── hudi │ │ ├── analysis │ │ └── Spark4HoodiePruneFileSourcePartitions.scala │ │ └── command │ │ ├── CreateHoodieTableAsSelectCommand.scala │ │ ├── DeleteHoodieTableCommand.scala │ │ ├── InsertIntoHoodieTableCommand.scala │ │ ├── MergeIntoHoodieTableCommand.scala │ │ └── UpdateHoodieTableCommand.scala ├── hudi-spark4.0.x │ ├── pom.xml │ └── src │ │ └── main │ │ ├── antlr4 │ │ ├── imports │ │ │ └── SqlBase.g4 │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── spark │ │ │ └── sql │ │ │ └── parser │ │ │ └── HoodieSqlBase.g4 │ │ └── scala │ │ └── org │ │ └── apache │ │ ├── hudi │ │ └── Spark40HoodieFileScanRDD.scala │ │ └── spark │ │ └── sql │ │ ├── HoodieSpark40CatalystExpressionUtils.scala │ │ ├── HoodieSpark40CatalystPlanUtils.scala │ │ ├── HoodieSpark40SchemaUtils.scala │ │ ├── adapter │ │ └── Spark4_0Adapter.scala │ │ ├── avro │ │ ├── AvroDeserializer.scala │ │ ├── AvroSerializer.scala │ │ ├── AvroUtils.scala │ │ ├── HoodieSpark4_0AvroDeserializer.scala │ │ └── HoodieSpark4_0AvroSerializer.scala │ │ ├── execution │ │ └── datasources │ │ │ ├── HoodieSpark40PartitionedFileUtils.scala │ │ │ ├── Spark40NestedSchemaPruning.scala │ │ │ ├── orc │ │ │ └── Spark40OrcReader.scala │ │ │ └── parquet │ │ │ ├── Spark40DataSourceUtils.scala │ │ │ ├── Spark40LegacyHoodieParquetFileFormat.scala │ │ │ └── Spark40ParquetReader.scala │ │ ├── hudi │ │ ├── Spark40ResolveHudiAlterTableCommand.scala │ │ └── analysis │ │ │ └── HoodieSpark40Analysis.scala │ │ └── parser │ │ ├── HoodieSpark4_0ExtendedSqlAstBuilder.scala │ │ └── HoodieSpark4_0ExtendedSqlParser.scala └── pom.xml ├── hudi-sync ├── hudi-adb-sync │ ├── pom.xml │ └── src │ │ ├── assembly │ │ └── src.xml │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── sync │ │ │ └── adb │ │ │ ├── AdbSyncConfig.java │ │ │ ├── AdbSyncTool.java │ │ │ ├── HoodieAdbJdbcClient.java │ │ │ └── HoodieAdbSyncException.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── sync │ │ └── adb │ │ └── TestAdbSyncConfig.java ├── hudi-datahub-sync │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── sync │ │ │ └── datahub │ │ │ ├── DataHubResponseLogger.java │ │ │ ├── DataHubSyncClient.java │ │ │ ├── DataHubSyncTool.java │ │ │ ├── DataHubTableProperties.java │ │ │ ├── HoodieDataHubSyncException.java │ │ │ ├── config │ │ │ ├── DataHubEmitterSupplier.java │ │ │ ├── DataHubSyncConfig.java │ │ │ ├── HoodieDataHubDatasetIdentifier.java │ │ │ └── TlsEnabledDataHubEmitterSupplier.java │ │ │ └── util │ │ │ └── SchemaFieldsUtil.java │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── sync │ │ │ └── datahub │ │ │ ├── DummyPartitionValueExtractor.java │ │ │ ├── TestDataHubSyncClient.java │ │ │ ├── TestDataHubSyncTool.java │ │ │ ├── TestDataHubTableProperties.java │ │ │ └── config │ │ │ ├── TestDataHubSyncConfig.java │ │ │ ├── TestHoodieDataHubDatasetIdentifier.java │ │ │ └── TestTlsEnabledDataHubEmitterSupplier.java │ │ └── resources │ │ ├── multi-ca-cert.pem │ │ ├── test-ca-cert.pem │ │ ├── test-keystore.p12 │ │ └── test-truststore.p12 ├── hudi-hive-sync │ ├── pom.xml │ ├── run_hive_global_commit_tool.sh │ ├── run_sync_tool.sh │ └── src │ │ ├── assembly │ │ └── src.xml │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ └── hive │ │ │ ├── HiveStylePartitionValueExtractor.java │ │ │ ├── HiveSyncConfig.java │ │ │ ├── HiveSyncConfigHolder.java │ │ │ ├── HiveSyncTool.java │ │ │ ├── HoodieHiveSyncClient.java │ │ │ ├── HoodieHiveSyncException.java │ │ │ ├── MultiPartKeysValueExtractor.java │ │ │ ├── NonPartitionedExtractor.java │ │ │ ├── SinglePartPartitionValueExtractor.java │ │ │ ├── SlashEncodedDayPartitionValueExtractor.java │ │ │ ├── SlashEncodedHourPartitionValueExtractor.java │ │ │ ├── ddl │ │ │ ├── DDLExecutor.java │ │ │ ├── HMSDDLExecutor.java │ │ │ ├── HiveQueryDDLExecutor.java │ │ │ ├── HiveSyncMode.java │ │ │ ├── JDBCExecutor.java │ │ │ └── QueryBasedDDLExecutor.java │ │ │ ├── replication │ │ │ ├── GlobalHiveSyncConfig.java │ │ │ ├── GlobalHiveSyncTool.java │ │ │ ├── HiveSyncGlobalCommit.java │ │ │ ├── HiveSyncGlobalCommitParams.java │ │ │ ├── HiveSyncGlobalCommitTool.java │ │ │ └── ReplicationStateSync.java │ │ │ ├── transaction │ │ │ └── lock │ │ │ │ ├── Heartbeat.java │ │ │ │ └── HiveMetastoreBasedLockProvider.java │ │ │ └── util │ │ │ ├── ColumnNameXLator.java │ │ │ ├── FilterGenVisitor.java │ │ │ ├── HivePartitionUtil.java │ │ │ ├── HiveSchemaUtil.java │ │ │ ├── IMetaStoreClientUtil.java │ │ │ └── PartitionFilterGenerator.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── hive │ │ ├── TestHiveSyncTool.java │ │ ├── TestHiveSyncToolArgs.java │ │ ├── TestMultiPartKeysValueExtractor.java │ │ ├── TestParquetToSparkSchemaUtils.java │ │ ├── TestPartitionValueExtractor.java │ │ ├── functional │ │ └── TestHiveMetastoreBasedLockProvider.java │ │ ├── replication │ │ └── TestHiveSyncGlobalCommitTool.java │ │ ├── testutils │ │ ├── HiveSyncFunctionalTestHarness.java │ │ ├── HiveTestCluster.java │ │ ├── HiveTestService.java │ │ └── HiveTestUtil.java │ │ └── util │ │ ├── TestHiveSchemaUtil.java │ │ └── TestPartitionFilterGenerator.java ├── hudi-sync-common │ ├── pom.xml │ └── src │ │ ├── main │ │ └── java │ │ │ └── org │ │ │ └── apache │ │ │ └── hudi │ │ │ ├── hive │ │ │ └── SchemaDifference.java │ │ │ └── sync │ │ │ └── common │ │ │ ├── HoodieMetaSyncOperations.java │ │ │ ├── HoodieSyncClient.java │ │ │ ├── HoodieSyncConfig.java │ │ │ ├── HoodieSyncException.java │ │ │ ├── HoodieSyncTool.java │ │ │ ├── metrics │ │ │ └── HoodieMetaSyncMetrics.java │ │ │ ├── model │ │ │ ├── FieldSchema.java │ │ │ ├── Partition.java │ │ │ ├── PartitionEvent.java │ │ │ └── PartitionValueExtractor.java │ │ │ └── util │ │ │ ├── ManifestFileWriter.java │ │ │ ├── Parquet2SparkSchemaUtils.java │ │ │ ├── SparkDataSourceTableUtils.java │ │ │ ├── SyncUtilHelpers.java │ │ │ └── TableUtils.java │ │ └── test │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── sync │ │ └── common │ │ ├── TestHoodieSyncClient.java │ │ ├── TestHoodieSyncConfig.java │ │ ├── TestHoodieSyncTool.java │ │ ├── metrics │ │ └── TestHoodieMetaSyncMetrics.java │ │ └── util │ │ ├── TestManifestFileWriter.java │ │ └── TestSyncUtilHelpers.java └── pom.xml ├── hudi-tests-common ├── pom.xml └── src │ └── main │ └── resources │ ├── log4j2-surefire-quiet.properties │ ├── log4j2-surefire.properties │ └── log4j2.component.properties ├── hudi-timeline-service ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── timeline │ │ └── service │ │ ├── RequestHandler.java │ │ ├── TimelineService.java │ │ └── handlers │ │ ├── BaseFileHandler.java │ │ ├── FileSliceHandler.java │ │ ├── Handler.java │ │ ├── MarkerHandler.java │ │ ├── RemotePartitionerHandler.java │ │ ├── TimelineHandler.java │ │ └── marker │ │ ├── AsyncTimelineServerBasedDetectionStrategy.java │ │ ├── BatchedMarkerCreationContext.java │ │ ├── BatchedMarkerCreationRunnable.java │ │ ├── MarkerBasedEarlyConflictDetectionRunnable.java │ │ ├── MarkerCreationDispatchingRunnable.java │ │ ├── MarkerCreationFuture.java │ │ └── MarkerDirState.java │ └── test │ └── java │ └── org │ └── apache │ └── hudi │ └── timeline │ └── service │ ├── MockHoodieHadoopStorage.java │ ├── TestRequestHandler.java │ ├── TestTimelineService.java │ ├── TimelineServiceTestHarness.java │ ├── functional │ └── TestRemoteHoodieTableFileSystemView.java │ └── handlers │ └── marker │ └── TestMarkerBasedEarlyConflictDetectionRunnable.java ├── hudi-trino-plugin ├── .mvn │ └── modernizer │ │ ├── violations-production-code-only.xml │ │ └── violations.xml ├── pom.xml └── src │ ├── main │ └── java │ │ └── io │ │ └── trino │ │ └── plugin │ │ └── hudi │ │ ├── ForHudiSplitManager.java │ │ ├── ForHudiSplitSource.java │ │ ├── HudiBaseFileOnlyPageSource.java │ │ ├── HudiConfig.java │ │ ├── HudiConnector.java │ │ ├── HudiConnectorFactory.java │ │ ├── HudiErrorCode.java │ │ ├── HudiFileStatus.java │ │ ├── HudiMetadata.java │ │ ├── HudiMetadataFactory.java │ │ ├── HudiModule.java │ │ ├── HudiPageSource.java │ │ ├── HudiPageSourceProvider.java │ │ ├── HudiPlugin.java │ │ ├── HudiPredicates.java │ │ ├── HudiSessionProperties.java │ │ ├── HudiSplit.java │ │ ├── HudiSplitManager.java │ │ ├── HudiSplitSource.java │ │ ├── HudiTableHandle.java │ │ ├── HudiTableInfo.java │ │ ├── HudiTableName.java │ │ ├── HudiTableProperties.java │ │ ├── HudiTransactionManager.java │ │ ├── HudiUtil.java │ │ ├── TableType.java │ │ ├── TimelineTable.java │ │ ├── cache │ │ └── HudiCacheKeyProvider.java │ │ ├── file │ │ ├── HudiBaseFile.java │ │ ├── HudiFile.java │ │ └── HudiLogFile.java │ │ ├── io │ │ ├── HudiTrinoFileReaderFactory.java │ │ ├── HudiTrinoIOFactory.java │ │ ├── InlineSeekableDataInputStream.java │ │ └── TrinoSeekableDataInputStream.java │ │ ├── partition │ │ ├── HiveHudiPartitionInfo.java │ │ ├── HudiPartitionInfo.java │ │ └── HudiPartitionInfoLoader.java │ │ ├── query │ │ ├── HudiDirectoryLister.java │ │ ├── HudiSnapshotDirectoryLister.java │ │ └── index │ │ │ ├── HudiBaseIndexSupport.java │ │ │ ├── HudiColumnStatsIndexSupport.java │ │ │ ├── HudiIndexSupport.java │ │ │ ├── HudiNoOpIndexSupport.java │ │ │ ├── HudiPartitionStatsIndexSupport.java │ │ │ ├── HudiRecordLevelIndexSupport.java │ │ │ ├── HudiSecondaryIndexSupport.java │ │ │ └── IndexSupportFactory.java │ │ ├── reader │ │ ├── HudiTrinoReaderContext.java │ │ └── HudiTrinoRecord.java │ │ ├── split │ │ ├── HudiBackgroundSplitLoader.java │ │ ├── HudiSplitFactory.java │ │ ├── HudiSplitWeightProvider.java │ │ └── SizeBasedSplitWeightProvider.java │ │ ├── stats │ │ ├── ForHudiTableStatistics.java │ │ ├── HudiTableStatistics.java │ │ ├── TableMetadataReader.java │ │ └── TableStatisticsReader.java │ │ ├── storage │ │ ├── HudiTrinoInlineStorage.java │ │ ├── HudiTrinoStorage.java │ │ └── TrinoStorageConfiguration.java │ │ └── util │ │ ├── HudiAvroSerializer.java │ │ ├── HudiTableTypeUtils.java │ │ ├── SynthesizedColumnHandler.java │ │ ├── SynthesizedColumnStrategy.java │ │ └── TupleDomainUtils.java │ └── test │ ├── java │ └── io │ │ └── trino │ │ └── plugin │ │ └── hudi │ │ ├── BaseHudiConnectorSmokeTest.java │ │ ├── HudiQueryRunner.java │ │ ├── HudiUtilTest.java │ │ ├── SessionBuilder.java │ │ ├── TestHudiAlluxioCacheFileOperations.java │ │ ├── TestHudiAlluxioCachingSmokeTest.java │ │ ├── TestHudiConfig.java │ │ ├── TestHudiConnectorFactory.java │ │ ├── TestHudiConnectorParquetColumnNamesTest.java │ │ ├── TestHudiConnectorTest.java │ │ ├── TestHudiMemoryCacheFileOperations.java │ │ ├── TestHudiMinioConnectorSmokeTest.java │ │ ├── TestHudiNoCacheFileOperations.java │ │ ├── TestHudiPageSource.java │ │ ├── TestHudiPageSourceProviderTest.java │ │ ├── TestHudiPlugin.java │ │ ├── TestHudiSessionProperties.java │ │ ├── TestHudiSharedMetastore.java │ │ ├── TestHudiSmokeTest.java │ │ ├── TestHudiSystemTables.java │ │ ├── TestingHudiConnectorFactory.java │ │ ├── TestingHudiPlugin.java │ │ ├── io │ │ └── TestInlineSeekableDataInputStream.java │ │ ├── partition │ │ └── TestHudiPartitionInfoLoader.java │ │ ├── query │ │ └── index │ │ │ ├── HudiRecordLevelIndexSupportTest.java │ │ │ └── TestingColumnHandle.java │ │ ├── split │ │ └── TestHudiSplitFactory.java │ │ ├── testing │ │ ├── HudiTableUnzipper.java │ │ ├── HudiTablesInitializer.java │ │ ├── HudiTestUtils.java │ │ ├── ResourceHudiTablesInitializer.java │ │ ├── TpchHudiTablesInitializer.java │ │ └── TypeInfoHelper.java │ │ └── util │ │ ├── FileOperationUtils.java │ │ ├── TestTupleDomainUtilsExtendedNullFilterTest.java │ │ └── TestTupleDomainUtilsTest.java │ └── resources │ ├── hudi-testing-data │ ├── hudi_comprehensive_types_v6_mor.md │ ├── hudi_comprehensive_types_v6_mor.zip │ ├── hudi_comprehensive_types_v8_mor.md │ ├── hudi_comprehensive_types_v8_mor.zip │ ├── hudi_cow_pt_table_with_field_names_in_caps.md │ ├── hudi_cow_pt_table_with_field_names_in_caps.zip │ ├── hudi_cow_pt_tbl.zip │ ├── hudi_cow_table_with_field_names_in_caps.md │ ├── hudi_cow_table_with_field_names_in_caps.zip │ ├── hudi_cow_table_with_multi_keys_and_field_names_in_caps.md │ ├── hudi_cow_table_with_multi_keys_and_field_names_in_caps.zip │ ├── hudi_custom_keygen_pt_v8_mor.md │ ├── hudi_custom_keygen_pt_v8_mor.zip │ ├── hudi_mor_table_with_field_names_in_caps.md │ ├── hudi_mor_table_with_field_names_in_caps.zip │ ├── hudi_multi_fg_pt_v6_mor.md │ ├── hudi_multi_fg_pt_v6_mor.zip │ ├── hudi_multi_fg_pt_v8_mor.md │ ├── hudi_multi_fg_pt_v8_mor.zip │ ├── hudi_multi_pt_v8_mor.md │ ├── hudi_multi_pt_v8_mor.zip │ ├── hudi_non_extractable_partition_path.md │ ├── hudi_non_extractable_partition_path.zip │ ├── hudi_non_part_cow.md │ ├── hudi_non_part_cow.zip │ ├── hudi_non_part_mor.md │ ├── hudi_non_part_mor.zip │ ├── hudi_stock_ticks_cow.zip │ ├── hudi_stock_ticks_mor.zip │ ├── hudi_timestamp_keygen_pt_epoch_to_yyyy_mm_dd_hh_v8_mor.md │ ├── hudi_timestamp_keygen_pt_epoch_to_yyyy_mm_dd_hh_v8_mor.zip │ ├── hudi_timestamp_keygen_pt_scalar_to_yyyy_mm_dd_hh_v8_mor.md │ ├── hudi_timestamp_keygen_pt_scalar_to_yyyy_mm_dd_hh_v8_mor.zip │ ├── hudi_trips_cow_v8.md │ ├── hudi_trips_cow_v8.zip │ ├── stock_ticks_cow.zip │ └── stock_ticks_mor.zip │ └── long_timestamp.parquet ├── hudi-utilities ├── pom.xml └── src │ ├── main │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── utilities │ │ ├── HiveIncrementalPuller.java │ │ ├── HoodieCleaner.java │ │ ├── HoodieClusteringJob.java │ │ ├── HoodieCompactionAdminTool.java │ │ ├── HoodieCompactor.java │ │ ├── HoodieDataTableUtils.java │ │ ├── HoodieDataTableValidator.java │ │ ├── HoodieDropPartitionsTool.java │ │ ├── HoodieIndexer.java │ │ ├── HoodieMetadataTableValidator.java │ │ ├── HoodieRepairTool.java │ │ ├── HoodieSnapshotExporter.java │ │ ├── HoodieTTLJob.java │ │ ├── HoodieWithTimelineServer.java │ │ ├── IdentitySplitter.java │ │ ├── SqlQueryBuilder.java │ │ ├── TableSizeStats.java │ │ ├── UtilHelpers.java │ │ ├── callback │ │ ├── SourceCommitCallback.java │ │ ├── kafka │ │ │ ├── HoodieWriteCommitKafkaCallback.java │ │ │ └── HoodieWriteCommitKafkaCallbackConfig.java │ │ └── pulsar │ │ │ ├── HoodieWriteCommitPulsarCallback.java │ │ │ └── HoodieWriteCommitPulsarCallbackConfig.java │ │ ├── checkpointing │ │ ├── InitialCheckPointProvider.java │ │ ├── InitialCheckpointFromAnotherHoodieTimelineProvider.java │ │ └── KafkaConnectHdfsProvider.java │ │ ├── config │ │ ├── CloudSourceConfig.java │ │ ├── DFSPathSelectorConfig.java │ │ ├── DatePartitionPathSelectorConfig.java │ │ ├── FilebasedSchemaProviderConfig.java │ │ ├── GCSEventsSourceConfig.java │ │ ├── HiveIncrPullSourceConfig.java │ │ ├── HiveSchemaProviderConfig.java │ │ ├── HoodieIncrSourceConfig.java │ │ ├── HoodieSchemaProviderConfig.java │ │ ├── HoodieStreamerConfig.java │ │ ├── JdbcSourceConfig.java │ │ ├── JdbcbasedSchemaProviderConfig.java │ │ ├── JsonKafkaPostProcessorConfig.java │ │ ├── KafkaSourceConfig.java │ │ ├── ParquetDFSSourceConfig.java │ │ ├── ProtoClassBasedSchemaProviderConfig.java │ │ ├── PulsarSourceConfig.java │ │ ├── S3EventsHoodieIncrSourceConfig.java │ │ ├── S3SourceConfig.java │ │ ├── SchemaProviderPostProcessorConfig.java │ │ ├── SqlFileBasedSourceConfig.java │ │ ├── SqlSourceConfig.java │ │ └── SqlTransformerConfig.java │ │ ├── deltastreamer │ │ ├── DeltaSync.java │ │ ├── HoodieDeltaStreamer.java │ │ ├── HoodieDeltaStreamerMetrics.java │ │ ├── HoodieMultiTableDeltaStreamer.java │ │ ├── NoNewDataTerminationStrategy.java │ │ └── PostWriteTerminationStrategy.java │ │ ├── deser │ │ └── KafkaAvroSchemaDeserializer.java │ │ ├── exception │ │ ├── HoodieIncrementalPullException.java │ │ ├── HoodieIncrementalPullSQLException.java │ │ ├── HoodieJsonToRowConversionException.java │ │ ├── HoodieReadFromSourceException.java │ │ ├── HoodieSchemaFetchException.java │ │ ├── HoodieSchemaPostProcessException.java │ │ ├── HoodieSchemaProviderException.java │ │ ├── HoodieSnapshotExporterException.java │ │ ├── HoodieSourcePostProcessException.java │ │ ├── HoodieSourceTimeoutException.java │ │ ├── HoodieStreamerException.java │ │ ├── HoodieStreamerWriteException.java │ │ ├── HoodieTransformException.java │ │ ├── HoodieTransformExecutionException.java │ │ └── HoodieTransformPlanException.java │ │ ├── ingestion │ │ ├── HoodieIngestionException.java │ │ ├── HoodieIngestionMetrics.java │ │ └── HoodieIngestionService.java │ │ ├── multitable │ │ ├── ArchiveTask.java │ │ ├── CleanTask.java │ │ ├── ClusteringTask.java │ │ ├── CompactionTask.java │ │ ├── HoodieMultiTableServicesMain.java │ │ ├── MultiTableServiceUtils.java │ │ ├── TableServicePipeline.java │ │ └── TableServiceTask.java │ │ ├── perf │ │ └── TimelineServerPerf.java │ │ ├── schema │ │ ├── DelegatingSchemaProvider.java │ │ ├── FilebasedSchemaProvider.java │ │ ├── HiveSchemaProvider.java │ │ ├── JdbcbasedSchemaProvider.java │ │ ├── KafkaOffsetPostProcessor.java │ │ ├── LazyCastingIterator.java │ │ ├── NullTargetSchemaRegistryProvider.java │ │ ├── ProtoClassBasedSchemaProvider.java │ │ ├── RowBasedSchemaProvider.java │ │ ├── SchemaPostProcessor.java │ │ ├── SchemaProvider.java │ │ ├── SchemaProviderWithPostProcessor.java │ │ ├── SchemaRegistryProvider.java │ │ ├── SchemaSet.java │ │ ├── SimpleSchemaProvider.java │ │ ├── converter │ │ │ ├── JsonToAvroSchemaConverter.java │ │ │ ├── JsonToAvroSchemaConverterConfig.java │ │ │ └── ProtoSchemaToAvroSchemaConverter.java │ │ └── postprocessor │ │ │ ├── ChainedSchemaPostProcessor.java │ │ │ ├── DeleteSupportSchemaPostProcessor.java │ │ │ ├── DropColumnSchemaPostProcessor.java │ │ │ └── add │ │ │ └── AddPrimitiveColumnSchemaPostProcessor.java │ │ ├── sources │ │ ├── AvroDFSSource.java │ │ ├── AvroKafkaSource.java │ │ ├── AvroSource.java │ │ ├── CsvDFSSource.java │ │ ├── GcsEventsHoodieIncrSource.java │ │ ├── GcsEventsSource.java │ │ ├── HiveIncrPullSource.java │ │ ├── HoodieIncrSource.java │ │ ├── HoodieRetryingKafkaConsumer.java │ │ ├── InputBatch.java │ │ ├── JdbcSource.java │ │ ├── JsonDFSSource.java │ │ ├── JsonKafkaSource.java │ │ ├── JsonSource.java │ │ ├── KafkaSource.java │ │ ├── ORCDFSSource.java │ │ ├── ParquetDFSSource.java │ │ ├── ProtoKafkaSource.java │ │ ├── PulsarSource.java │ │ ├── RowSource.java │ │ ├── S3EventsHoodieIncrSource.java │ │ ├── S3EventsSource.java │ │ ├── SnapshotLoadQuerySplitter.java │ │ ├── Source.java │ │ ├── SqlFileBasedSource.java │ │ ├── SqlSource.java │ │ ├── debezium │ │ │ ├── DebeziumSource.java │ │ │ ├── MysqlDebeziumSource.java │ │ │ └── PostgresDebeziumSource.java │ │ ├── helpers │ │ │ ├── AvroConvertor.java │ │ │ ├── CloudDataFetcher.java │ │ │ ├── CloudObjectIncrCheckpoint.java │ │ │ ├── CloudObjectMetadata.java │ │ │ ├── CloudObjectsSelector.java │ │ │ ├── CloudObjectsSelectorCommon.java │ │ │ ├── CloudStoreIngestionConfig.java │ │ │ ├── DFSPathSelector.java │ │ │ ├── DatePartitionPathSelector.java │ │ │ ├── IncrSourceCloudStorageHelper.java │ │ │ ├── IncrSourceHelper.java │ │ │ ├── KafkaOffsetGen.java │ │ │ ├── KafkaSourceUtil.java │ │ │ ├── MercifulJsonToRowConverter.java │ │ │ ├── ProtoConversionUtil.java │ │ │ ├── QueryInfo.java │ │ │ ├── QueryRunner.java │ │ │ ├── RowConverter.java │ │ │ ├── S3EventsMetaSelector.java │ │ │ ├── SanitizationUtils.java │ │ │ └── gcs │ │ │ │ ├── GcsIngestionConfig.java │ │ │ │ ├── MessageBatch.java │ │ │ │ ├── MessageValidity.java │ │ │ │ ├── MetadataMessage.java │ │ │ │ ├── PubsubMessagesFetcher.java │ │ │ │ └── PubsubQueueClient.java │ │ └── processor │ │ │ ├── ChainedJsonKafkaSourcePostProcessor.java │ │ │ ├── JsonKafkaSourcePostProcessor.java │ │ │ └── maxwell │ │ │ ├── MaxwellJsonKafkaSourcePostProcessor.java │ │ │ └── OrderingFieldType.java │ │ ├── streamer │ │ ├── BaseErrorTableWriter.java │ │ ├── BootstrapExecutor.java │ │ ├── ConfigurationHotUpdateStrategy.java │ │ ├── ConfigurationHotUpdateStrategyUtils.java │ │ ├── DefaultStreamContext.java │ │ ├── ErrorEvent.java │ │ ├── ErrorTableUtils.java │ │ ├── HoodieMultiTableStreamer.java │ │ ├── HoodieStreamer.java │ │ ├── HoodieStreamerMetrics.java │ │ ├── HoodieStreamerUtils.java │ │ ├── NoNewDataTerminationStrategy.java │ │ ├── PostWriteTerminationStrategy.java │ │ ├── SchedulerConfGenerator.java │ │ ├── SourceFormatAdapter.java │ │ ├── SourceProfile.java │ │ ├── SourceProfileSupplier.java │ │ ├── SparkSampleWritesUtils.java │ │ ├── StreamContext.java │ │ ├── StreamSync.java │ │ ├── StreamerCheckpointUtils.java │ │ ├── TableExecutionContext.java │ │ └── TerminationStrategyUtils.java │ │ ├── transform │ │ ├── AWSDmsTransformer.java │ │ ├── ChainedTransformer.java │ │ ├── ErrorTableAwareChainedTransformer.java │ │ ├── FlatteningTransformer.java │ │ ├── SqlFileBasedTransformer.java │ │ ├── SqlQueryBasedTransformer.java │ │ └── Transformer.java │ │ └── util │ │ └── BloomFilterData.java │ └── test │ ├── java │ └── org │ │ └── apache │ │ └── hudi │ │ └── utilities │ │ ├── DummySchemaPostProcessor.java │ │ ├── DummySchemaProvider.java │ │ ├── SparkAvroSchemaProvider.java │ │ ├── TestHiveIncrementalPuller.java │ │ ├── TestHoodieIndexer.java │ │ ├── TestHoodieMetadataTableValidator.java │ │ ├── TestHoodieRepairTool.java │ │ ├── TestHoodieSnapshotExporter.java │ │ ├── TestManifestFileWriterSpark.java │ │ ├── TestSchemaPostProcessor.java │ │ ├── TestSqlQueryBuilder.java │ │ ├── TestUtilHelpers.java │ │ ├── callback │ │ └── TestKafkaCallbackProvider.java │ │ ├── checkpointing │ │ └── TestKafkaConnectHdfsProvider.java │ │ ├── config │ │ └── SourceTestConfig.java │ │ ├── deltastreamer │ │ ├── HoodieDeltaStreamerTestBase.java │ │ ├── MockConfigurationHotUpdateStrategy.java │ │ ├── TestHoodieDeltaStreamer.java │ │ ├── TestHoodieDeltaStreamerDAGExecution.java │ │ ├── TestHoodieDeltaStreamerErrorTableWriteFlow.java │ │ ├── TestHoodieDeltaStreamerSchemaEvolutionBase.java │ │ ├── TestHoodieDeltaStreamerSchemaEvolutionExtensive.java │ │ ├── TestHoodieDeltaStreamerSchemaEvolutionQuick.java │ │ ├── TestHoodieDeltaStreamerWithMultiWriter.java │ │ ├── TestHoodieMultiTableDeltaStreamer.java │ │ ├── TestSchedulerConfGenerator.java │ │ ├── TestSourceFormatAdapter.java │ │ ├── TestSparkSampleWritesUtils.java │ │ ├── TestTransformer.java │ │ └── multisync │ │ │ ├── MockSyncTool1.java │ │ │ ├── MockSyncTool2.java │ │ │ ├── MockSyncToolException1.java │ │ │ ├── MockSyncToolException2.java │ │ │ └── TestMultipleMetaSync.java │ │ ├── deser │ │ └── TestKafkaAvroSchemaDeserializer.java │ │ ├── functional │ │ ├── TestAWSDatabaseMigrationServiceSource.java │ │ ├── TestChainedTransformer.java │ │ ├── TestErrorTableAwareChainedTransformer.java │ │ ├── TestHiveSchemaProvider.java │ │ ├── TestHoodieSnapshotExporter.java │ │ └── TestJdbcbasedSchemaProvider.java │ │ ├── multitable │ │ └── TestHoodieMultiTableServicesMain.java │ │ ├── offlinejob │ │ ├── HoodieOfflineJobTestBase.java │ │ ├── TestHoodieClusteringJob.java │ │ └── TestHoodieCompactorJob.java │ │ ├── schema │ │ ├── TestFilebasedSchemaProvider.java │ │ ├── TestKafkaOffsetPostProcessor.java │ │ ├── TestLazyCastingIterator.java │ │ ├── TestProtoClassBasedSchemaProvider.java │ │ ├── TestSchemaRegistryProvider.java │ │ └── converter │ │ │ ├── TestJsonToAvroSchemaConverter.java │ │ │ └── TestProtoSchemaToAvroSchemaConverter.java │ │ ├── sources │ │ ├── BaseTestKafkaSource.java │ │ ├── CheckpointValidator.java │ │ ├── DummyOperationExecutor.java │ │ ├── MockGcsEventsHoodieIncrSource.java │ │ ├── MockGeneralHoodieIncrSource.java │ │ ├── MockS3EventsHoodieIncrSource.java │ │ ├── S3EventsHoodieIncrSourceHarness.java │ │ ├── TestAvroDFSSource.java │ │ ├── TestAvroKafkaSource.java │ │ ├── TestCsvDFSSource.java │ │ ├── TestDataSource.java │ │ ├── TestGcsEventsHoodieIncrSource.java │ │ ├── TestGcsEventsSource.java │ │ ├── TestGenericRddTransform.java │ │ ├── TestHoodieIncrSource.java │ │ ├── TestInputBatch.java │ │ ├── TestJdbcSource.java │ │ ├── TestJsonDFSSource.java │ │ ├── TestJsonKafkaSource.java │ │ ├── TestJsonKafkaSourcePostProcessor.java │ │ ├── TestKafkaSource.java │ │ ├── TestParquetDFSSource.java │ │ ├── TestParquetDFSSourceEmptyBatch.java │ │ ├── TestProtoKafkaSource.java │ │ ├── TestS3EventsHoodieIncrSource.java │ │ ├── TestS3EventsSource.java │ │ ├── TestSqlFileBasedSource.java │ │ ├── TestSqlSource.java │ │ ├── debezium │ │ │ ├── TestAbstractDebeziumSource.java │ │ │ ├── TestMysqlDebeziumSource.java │ │ │ └── TestPostgresDebeziumSource.java │ │ └── helpers │ │ │ ├── SchemaTestProvider.java │ │ │ ├── TestCheckpointUtils.java │ │ │ ├── TestCloudObjectsSelector.java │ │ │ ├── TestCloudObjectsSelectorCommon.java │ │ │ ├── TestDFSPathSelectorCommonMethods.java │ │ │ ├── TestDatePartitionPathSelector.java │ │ │ ├── TestIncrSourceHelper.java │ │ │ ├── TestKafkaOffsetGen.java │ │ │ ├── TestKafkaSourceUtil.java │ │ │ ├── TestMercifulJsonToRowConverterBase.java │ │ │ ├── TestMercifulJsonToRowConverterJava8Api.java │ │ │ ├── TestMercifulJsonToRowConverterLegacyApi.java │ │ │ ├── TestProtoConversionUtil.java │ │ │ ├── TestS3EventsMetaSelector.java │ │ │ ├── TestSanitizationUtils.java │ │ │ ├── TestSnapshotQuerySplitterImpl.java │ │ │ ├── TestSnapshotQuerySplitterWithoutPartitionFilterImpl.java │ │ │ └── gcs │ │ │ ├── TestPubsubMessagesFetcher.java │ │ │ └── TestPubsubQueueClient.java │ │ ├── streamer │ │ ├── TestErrorTableUtils.java │ │ ├── TestHoodieIncrSourceE2E.java │ │ ├── TestHoodieIncrSourceE2EAutoUpgrade.java │ │ ├── TestHoodieStreamerMetrics.java │ │ ├── TestHoodieStreamerUtils.java │ │ ├── TestStreamSync.java │ │ └── TestStreamerCheckpointUtils.java │ │ ├── testutils │ │ ├── CloudObjectTestUtils.java │ │ ├── ColStatsUpgradeTesting.java │ │ ├── JdbcTestUtils.java │ │ ├── SanitizationTestUtils.java │ │ ├── SparkClientFunctionalTestHarnessWithHiveSupport.java │ │ ├── UtilitiesTestBase.java │ │ └── sources │ │ │ ├── AbstractBaseTestSource.java │ │ │ ├── AbstractCloudObjectsSourceTestBase.java │ │ │ ├── AbstractDFSSourceTestBase.java │ │ │ └── DistributedTestDataSource.java │ │ └── transform │ │ ├── TestChainedTransformer.java │ │ ├── TestFlatteningTransformer.java │ │ ├── TestSqlFileBasedTransformer.java │ │ └── TestSqlQueryBasedTransformer.java │ └── resources │ ├── IncrementalPull.sqltemplate │ ├── col-stats │ ├── README.md │ ├── colstats-upgrade-test-v6.zip │ └── colstats-upgrade-test-v8.zip │ ├── data │ ├── avro_sanitization.json │ ├── avro_sanitization_bad_naming_in.json │ ├── avro_sanitization_bad_naming_nested_array_in.json │ ├── avro_sanitization_bad_naming_nested_array_out.json │ ├── avro_sanitization_bad_naming_nested_map_in.json │ ├── avro_sanitization_bad_naming_nested_map_out.json │ ├── avro_sanitization_bad_naming_out.json │ ├── nested_data_1.json │ ├── nested_data_2.json │ ├── nested_data_3.json │ ├── partitioned │ │ ├── country=IND │ │ │ └── state=TS │ │ │ │ └── data.json │ │ └── country=US │ │ │ ├── state=CA │ │ │ └── data.json │ │ │ └── state=TX │ │ │ ├── data.json │ │ │ └── old_data.json │ └── schema-evolution │ │ ├── endTestEverything.json │ │ ├── endTypePromotion.json │ │ ├── endTypePromotionDropCols.json │ │ ├── extraLogFiles.json │ │ ├── extraLogFilesTestEverything.json │ │ ├── extraLogFilesTypePromo.json │ │ ├── newFileGroups.json │ │ ├── newFileGroupsTestEverything.json │ │ ├── newFileGroupsTypePromo.json │ │ ├── plain.json │ │ ├── start.json │ │ ├── startTestEverything.json │ │ ├── startTypePromotion.json │ │ ├── testAddAndDropCols.json │ │ ├── testAddColChangeOrderAllFiles.json │ │ ├── testAddColChangeOrderSomeFiles.json │ │ ├── testAddColRoot.json │ │ ├── testAddColStruct.json │ │ ├── testAddComplexField.json │ │ ├── testAddMetaCol.json │ │ ├── testDropColRoot.json │ │ ├── testDropColStruct.json │ │ └── testMissingRecordKey.json │ ├── exporter │ └── sql-file-transformer.sql │ ├── hive-site.xml │ ├── logical-repair │ ├── README.md │ ├── cow_write_updates │ │ ├── 2 │ │ │ └── data.json │ │ └── 3 │ │ │ └── data.json │ ├── mor_write_updates │ │ └── 5 │ │ │ └── data.json │ ├── schema.avsc │ ├── trips_logical_types_json_cow_write.zip │ ├── trips_logical_types_json_mor_write_avro_log.zip │ └── trips_logical_types_json_mor_write_parquet_log.zip │ ├── schema-provider │ ├── json │ │ ├── array-with-item-type-union │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── complex-json-union-types │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── enum-properties │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── example-address │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── example-calendar │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── example-card │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── example-geographical-location │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── kafka-decimal-simple │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── multiple-properties │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── nested-properties │ │ │ ├── expected.json │ │ │ └── input.json │ │ ├── not-null-default-value-schema │ │ │ ├── expected_no_stripping_quotes.json │ │ │ ├── expected_stripping_quotes.json │ │ │ └── input.json │ │ ├── schema-repeating-names │ │ │ ├── expected.json │ │ │ └── input.json │ │ └── single-properties │ │ │ ├── expected.json │ │ │ └── input.json │ └── proto │ │ ├── evolved.proto │ │ ├── oneof_schema.avsc │ │ ├── parent_schema_recursive_default_limit.avsc │ │ ├── parent_schema_recursive_depth_2.avsc │ │ ├── recursive.proto │ │ ├── sample.proto │ │ ├── sample_schema_defaults.avsc │ │ └── sample_schema_wrapped_and_timestamp_as_record.avsc │ ├── schema │ ├── evolved-test-with-default-value.avsc │ ├── nested_data_schema.avsc │ ├── sample_data_schema.avsc │ ├── sample_gcs_data.avsc │ └── simple-test-with-default-value.avsc │ └── streamer-config │ ├── base.properties │ ├── clusteringjob.properties │ ├── complex-source.avsc │ ├── dfs-source.properties │ ├── file_schema_provider_invalid.avsc │ ├── file_schema_provider_valid.avsc │ ├── gcs-metadata.avsc │ ├── hive_schema_provider_source.avsc │ ├── hive_schema_provider_target.avsc │ ├── indexer-expression-index.properties │ ├── indexer-only-bloom.properties │ ├── indexer-record-index.properties │ ├── indexer-secondary-index.properties │ ├── indexer.properties │ ├── invalid_hive_sync_uber_config.properties │ ├── kafka-source-multi.properties │ ├── kafka-source.properties │ ├── multi-source-1.properties │ ├── multi-source-2.properties │ ├── s3-metadata.avsc │ ├── schema_registry.source_schema_tab.sql │ ├── schema_registry.target_schema_tab.sql │ ├── short_trip_uber_config.properties │ ├── source-flattened.avsc │ ├── source-jdbc.avsc │ ├── source-timestamp-millis.avsc │ ├── source.avsc │ ├── source_evolved.avsc │ ├── source_short_trip_uber.avsc │ ├── source_uber.avsc │ ├── source_uber_encoded_decimal.avsc │ ├── source_uber_encoded_decimal.json │ ├── sql-file-based-source-invalid-table.sql │ ├── sql-file-based-source.sql │ ├── sql-file-transformer-empty.sql │ ├── sql-file-transformer-invalid.sql │ ├── sql-file-transformer.sql │ ├── sql-transformer.properties │ ├── target-flattened.avsc │ ├── target.avsc │ ├── target_short_trip_uber.avsc │ ├── target_uber.avsc │ ├── triprec.sql │ └── uber_config.properties ├── packaging ├── README.md ├── bundle-validation │ ├── Dockerfile │ ├── README.md │ ├── base-dev │ │ └── Dockerfile │ ├── base │ │ ├── Dockerfile │ │ ├── build_flink1170hive313spark351.sh │ │ ├── build_flink1171hive313spark334.sh │ │ ├── build_flink1180hive313spark350.sh │ │ ├── build_flink1180hive313spark350scala213.sh │ │ ├── build_flink1180hive313spark351scala213.sh │ │ ├── build_flink1181hive313spark343.sh │ │ ├── build_flink1190hive313spark350.sh │ │ ├── build_flink1190hive313spark350scala213.sh │ │ ├── build_flink1190hive313spark351scala213.sh │ │ ├── build_flink1200hive313spark350.sh │ │ ├── build_flink1200hive313spark350scala213.sh │ │ ├── build_flink1200hive313spark351scala213.sh │ │ ├── build_flink1200hive313spark400scala213.sh │ │ └── build_flink200hive313spark351.sh │ ├── ci_run.sh │ ├── cli │ │ └── commands.txt │ ├── conf │ │ ├── core-site.xml │ │ ├── hdfs-site.xml │ │ ├── hive-site.hive2.xml │ │ ├── hive-site.xml │ │ ├── hudi-defaults.conf │ │ └── spark-defaults.conf │ ├── docker_java17 │ │ ├── TestHiveClientUtils.scala │ │ └── docker_java17_test.sh │ ├── flink │ │ ├── compact.sh │ │ └── insert.sql │ ├── kafka │ │ ├── config-sink.json │ │ ├── consume.sh │ │ └── produce.sh │ ├── run_docker_java17.sh │ ├── service │ │ ├── read.scala │ │ └── write.scala │ ├── spark_hadoop_mr │ │ ├── validate.scala │ │ └── write.scala │ ├── utilities │ │ ├── hoodieapp.properties │ │ └── validate.scala │ └── validate.sh ├── hudi-aws-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── aws │ │ └── bundle │ │ └── Main.java ├── hudi-cli-bundle │ ├── conf │ │ ├── hudi-env.sh │ │ └── log4j2.properties │ ├── hudi-cli-with-bundle.sh │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── cli │ │ └── bundle │ │ └── Main.java ├── hudi-datahub-sync-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── datahub │ │ └── bundle │ │ └── Main.java ├── hudi-flink-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── flink │ │ └── bundle │ │ └── Main.java ├── hudi-gcp-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── gcp │ │ └── bigquery │ │ └── bundle │ │ └── Main.java ├── hudi-hadoop-mr-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── hadoop │ │ └── bundle │ │ └── Main.java ├── hudi-hive-sync-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── hive │ │ └── bundle │ │ └── Main.java ├── hudi-integ-test-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── testsuite │ │ └── bundle │ │ └── Main.java ├── hudi-kafka-connect-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── kafka │ │ └── connect │ │ └── bundle │ │ └── Main.java ├── hudi-metaserver-server-bundle │ └── pom.xml ├── hudi-presto-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── presto │ │ └── bundle │ │ └── Main.java ├── hudi-spark-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── spark │ │ └── bundle │ │ └── Main.java ├── hudi-timeline-server-bundle │ ├── pom.xml │ ├── run_server.sh │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── timeline │ │ └── server │ │ └── bundle │ │ └── Main.java ├── hudi-trino-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── trino │ │ └── bundle │ │ └── Main.java ├── hudi-utilities-bundle │ ├── pom.xml │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── apache │ │ └── hudi │ │ └── utilities │ │ └── bundle │ │ └── Main.java └── hudi-utilities-slim-bundle │ ├── README.md │ ├── pom.xml │ └── src │ └── main │ └── java │ └── org │ └── apache │ └── hudi │ └── utilities │ └── bundle │ └── Main.java ├── pom.xml ├── release ├── release_guide.md └── release_guide_overview.jpg ├── rfc ├── README.md ├── rfc-100 │ ├── rfc-100-autonomous-driving.png │ └── rfc-100.md ├── rfc-101 │ └── rfc-101.md ├── rfc-27 │ ├── col_stats.png │ └── rfc-27.md ├── rfc-34 │ ├── big-query-arch.png │ └── rfc-34.md ├── rfc-37 │ ├── metadata_index_1.png │ ├── metadata_index_bloom_partition.png │ ├── metadata_index_col_stats.png │ └── rfc-37.md ├── rfc-38 │ ├── 1.png │ └── rfc-38.md ├── rfc-39 │ ├── arch.png │ └── rfc-39.md ├── rfc-40 │ ├── Hudi_Connector.png │ └── rfc-40.md ├── rfc-41 │ └── rfc-41.md ├── rfc-42 │ ├── basic_bucket_hashing.png │ ├── bucket_resizing.png │ ├── bucket_resizing_virtual_log_file.png │ ├── consistent_hashing.png │ └── rfc-42.md ├── rfc-44 │ ├── presto-connector.png │ └── rfc-44.md ├── rfc-45 │ ├── async_metadata_index.png │ └── rfc-45.md ├── rfc-46 │ └── rfc-46.md ├── rfc-47 │ ├── process.png │ └── rfc-47.md ├── rfc-48 │ ├── async_logcompaction_issues.jpeg │ ├── base_case.jpeg │ ├── huge_data_after_logcompaction_written_to_multiple_blocks.jpeg │ ├── rfc-48.md │ └── rollback_block_scenario.jpeg ├── rfc-49 │ ├── DatasetProfile.png │ ├── DatasetProperties.png │ ├── SchemaMetadata.png │ └── rfc-49.md ├── rfc-50 │ ├── ComparisonDiagram.png │ ├── CurrentDesign.png │ ├── Design.png │ ├── SchematicDiagram.png │ └── rfc-50.md ├── rfc-51 │ ├── code-paths.jpg │ ├── logic-flows.jpg │ ├── query_cdc_on_mor.jpg │ ├── read_cdc_log_file.jpg │ ├── rfc-51.md │ └── scenario-illustration.jpg ├── rfc-53 │ ├── DisruptorExecutor.png │ └── rfc-53.md ├── rfc-55 │ ├── hudi-sync-class-diagram.png │ ├── hudi-sync-flows.png │ └── rfc-55.md ├── rfc-56 │ ├── figure1.png │ ├── figure2.png │ ├── figure3.png │ ├── figure4.png │ ├── flow1.png │ └── rfc-56.md ├── rfc-57 │ └── rfc-57.md ├── rfc-60 │ ├── read_flow.png │ ├── rfc-60.md │ └── wrapper_fs.png ├── rfc-63 │ └── rfc-63.md ├── rfc-65 │ └── rfc-65.md ├── rfc-66 │ ├── compaction.png │ ├── log_file_sequence.png │ ├── multi_writer.png │ ├── non_serial_compaction.png │ └── rfc-66.md ├── rfc-68 │ ├── 1.jpg │ ├── 2.jpg │ ├── 3.jpg │ ├── 4.jpg │ └── rfc-68.md ├── rfc-69 │ ├── hudi-dblayers.png │ └── rfc-69.md ├── rfc-73 │ └── rfc-73.md ├── rfc-76 │ └── rfc-76.md ├── rfc-77 │ └── rfc-77.md ├── rfc-78 │ └── rfc-78.md ├── rfc-8 │ ├── metadata_record_index.jpg │ └── rfc-8.md ├── rfc-80 │ ├── append-handle.png │ ├── bucket.png │ ├── family-compaction.png │ ├── file-group.png │ ├── grand-compaction.png │ ├── process-read.png │ ├── process-write.png │ ├── rfc-80.md │ ├── row-reader.png │ └── table.png ├── rfc-82 │ └── rfc-82.md ├── rfc-83 │ ├── rfc-83.md │ └── timeline.png ├── rfc-84 │ ├── datastream_hoodietablesink.png │ └── rfc-84.md ├── rfc-85 │ ├── images │ │ ├── 1-create-subtask.png │ │ ├── 10-log-work-set-remaining-estimate.png │ │ ├── 11-story-screen-after-log-work.png │ │ ├── 12-sprint-1-burndown-chart.png │ │ ├── 13-sprint-1-burndown-details.png │ │ ├── 14-story-add-new-subtask.png │ │ ├── 15-sprint-2-burndown-chart.png │ │ ├── 16-sprint-2-burndown-details.png │ │ ├── 17-sprint-config-estimation.png │ │ ├── 2-create-subtask.png │ │ ├── 3-set-original-estimate.png │ │ ├── 4-story-screen.png │ │ ├── 5-subtask-screen.png │ │ ├── 6-move-issue-to-sprint-1.png │ │ ├── 7-sprint-1-board.png │ │ ├── 8-log-work.png │ │ └── 9-log-work-timespent.png │ └── rfc-85.md ├── rfc-87 │ └── rfc-87.md ├── rfc-89 │ ├── archive.jpg │ ├── dry-run.jpg │ ├── rescale.jpg │ ├── rfc-89.md │ └── workflow.jpg ├── rfc-91 │ ├── dfs-locking-diagram.png │ └── rfc-91.md ├── rfc-92 │ ├── bitmap_example.png │ ├── bitmap_payload.png │ ├── prune_example.png │ └── rfc-92.md ├── rfc-93 │ ├── flow_and_arch.jpg │ └── rfc-93.md ├── rfc-95 │ ├── hudi_flink_source.png │ └── rfc-95.md ├── rfc-98 │ ├── initial_integration_with_Spark.jpg │ └── rfc-98.md └── template.md ├── scripts ├── checkout_pr.sh ├── dependency.sh ├── grafana-dashboard.json ├── jacoco │ ├── README.md │ ├── download_jacoco.sh │ ├── generate_jacoco_coverage_report.sh │ ├── merge_jacoco_exec_files.sh │ └── merge_jacoco_job_files.sh ├── pr_compliance.py ├── pr_push_command.sh └── release │ ├── create_source_directory.sh │ ├── create_source_release.sh │ ├── cut_release_branch.sh │ ├── deploy_staging_jars.sh │ ├── generate_jar_path.py │ ├── generate_notice.sh │ ├── preparation_before_release.sh │ ├── validate_source_binary_files.sh │ ├── validate_source_copyright.sh │ ├── validate_source_rat.sh │ ├── validate_staged_bundles.sh │ └── validate_staged_release.sh └── style ├── checkstyle-suppressions.xml ├── checkstyle.xml ├── import-control.xml └── scalastyle.xml /.asf.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.asf.yaml -------------------------------------------------------------------------------- /.codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.codecov.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/ISSUE_TEMPLATE/config.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/hudi_bug.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/ISSUE_TEMPLATE/hudi_bug.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/hudi_community_support.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/ISSUE_TEMPLATE/hudi_community_support.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/hudi_feature.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/ISSUE_TEMPLATE/hudi_feature.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/hudi_improvement.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/ISSUE_TEMPLATE/hudi_improvement.yml -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/workflows/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/README.md -------------------------------------------------------------------------------- /.github/workflows/azure_ci.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/azure_ci.js -------------------------------------------------------------------------------- /.github/workflows/azure_ci_check.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/azure_ci_check.yml -------------------------------------------------------------------------------- /.github/workflows/bot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/bot.yml -------------------------------------------------------------------------------- /.github/workflows/labeler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/labeler.js -------------------------------------------------------------------------------- /.github/workflows/maven_artifact_validation.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/maven_artifact_validation.yml -------------------------------------------------------------------------------- /.github/workflows/pr_compliance.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/pr_compliance.yml -------------------------------------------------------------------------------- /.github/workflows/pr_title_validation.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/pr_title_validation.yml -------------------------------------------------------------------------------- /.github/workflows/release_candidate_validation.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/release_candidate_validation.yml -------------------------------------------------------------------------------- /.github/workflows/scheduled_workflow.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/scheduled_workflow.yml -------------------------------------------------------------------------------- /.github/workflows/update_pr_compliance.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.github/workflows/update_pr_compliance.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.idea/icon.png -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/Dockerfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/LICENSE -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/NOTICE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/README.md -------------------------------------------------------------------------------- /azure-pipelines-20230430.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/azure-pipelines-20230430.yml -------------------------------------------------------------------------------- /conf/hudi-defaults.conf.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/conf/hudi-defaults.conf.template -------------------------------------------------------------------------------- /dependencies/hudi-flink-bundle_2.11.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-flink-bundle_2.11.txt -------------------------------------------------------------------------------- /dependencies/hudi-flink-bundle_2.12.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-flink-bundle_2.12.txt -------------------------------------------------------------------------------- /dependencies/hudi-hadoop-mr-bundle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-hadoop-mr-bundle.txt -------------------------------------------------------------------------------- /dependencies/hudi-hive-sync-bundle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-hive-sync-bundle.txt -------------------------------------------------------------------------------- /dependencies/hudi-integ-test-bundle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-integ-test-bundle.txt -------------------------------------------------------------------------------- /dependencies/hudi-kafka-connect-bundle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-kafka-connect-bundle.txt -------------------------------------------------------------------------------- /dependencies/hudi-presto-bundle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-presto-bundle.txt -------------------------------------------------------------------------------- /dependencies/hudi-spark-bundle_2.11.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-spark-bundle_2.11.txt -------------------------------------------------------------------------------- /dependencies/hudi-spark-bundle_2.12.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-spark-bundle_2.12.txt -------------------------------------------------------------------------------- /dependencies/hudi-spark3-bundle_2.12.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-spark3-bundle_2.12.txt -------------------------------------------------------------------------------- /dependencies/hudi-timeline-server-bundle.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-timeline-server-bundle.txt -------------------------------------------------------------------------------- /dependencies/hudi-utilities-bundle_2.11.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-utilities-bundle_2.11.txt -------------------------------------------------------------------------------- /dependencies/hudi-utilities-bundle_2.12.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/dependencies/hudi-utilities-bundle_2.12.txt -------------------------------------------------------------------------------- /doap_HUDI.rdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/doap_HUDI.rdf -------------------------------------------------------------------------------- /docker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/README.md -------------------------------------------------------------------------------- /docker/build_docker_images.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/build_docker_images.sh -------------------------------------------------------------------------------- /docker/build_local_docker_images.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/build_local_docker_images.sh -------------------------------------------------------------------------------- /docker/compose/docker-compose_hadoop284_hive233_spark353_amd64.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/compose/docker-compose_hadoop284_hive233_spark353_amd64.yml -------------------------------------------------------------------------------- /docker/compose/docker-compose_hadoop284_hive233_spark353_arm64.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/compose/docker-compose_hadoop284_hive233_spark353_arm64.yml -------------------------------------------------------------------------------- /docker/compose/docker-compose_hadoop334_hive313_spark353_amd64.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/compose/docker-compose_hadoop334_hive313_spark353_amd64.yml -------------------------------------------------------------------------------- /docker/compose/docker-compose_hadoop334_hive313_spark353_arm64.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/compose/docker-compose_hadoop334_hive313_spark353_arm64.yml -------------------------------------------------------------------------------- /docker/compose/hadoop.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/compose/hadoop.env -------------------------------------------------------------------------------- /docker/demo/compaction-bootstrap.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/compaction-bootstrap.commands -------------------------------------------------------------------------------- /docker/demo/compaction.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/compaction.commands -------------------------------------------------------------------------------- /docker/demo/config/base.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/base.properties -------------------------------------------------------------------------------- /docker/demo/config/dfs-source.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/dfs-source.properties -------------------------------------------------------------------------------- /docker/demo/config/hoodie-incr.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/hoodie-incr.properties -------------------------------------------------------------------------------- /docker/demo/config/hoodie-schema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/hoodie-schema.avsc -------------------------------------------------------------------------------- /docker/demo/config/kafka-source.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/kafka-source.properties -------------------------------------------------------------------------------- /docker/demo/config/log4j2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/log4j2.properties -------------------------------------------------------------------------------- /docker/demo/config/schema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/schema.avsc -------------------------------------------------------------------------------- /docker/demo/config/spark-defaults.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/spark-defaults.conf -------------------------------------------------------------------------------- /docker/demo/config/test-suite/base.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/base.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/compact-test.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/compact-test.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/complex-dag-mor.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/complex-dag-mor.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/complex-source.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/complex-source.avsc -------------------------------------------------------------------------------- /docker/demo/config/test-suite/deltastreamer-hive-sync-presto.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/deltastreamer-hive-sync-presto.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/deltastreamer-immutable-dataset.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/deltastreamer-immutable-dataset.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/deltastreamer-medium-clustering.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/deltastreamer-medium-clustering.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/deltastreamer-non-partitioned.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/deltastreamer-non-partitioned.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/deltastreamer-pure-bulk-inserts.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/deltastreamer-pure-bulk-inserts.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/deltastreamer-pure-inserts.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/deltastreamer-pure-inserts.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/detlastreamer-long-running-example.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/detlastreamer-long-running-example.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/insert-overwrite-table.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/insert-overwrite-table.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/insert-overwrite.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/insert-overwrite.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/large-scale/cow-large-scale-sanity.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/large-scale/cow-large-scale-sanity.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/large-scale/mor-large-scale-sanity.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/large-scale/mor-large-scale-sanity.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/mor-async-compact.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/mor-async-compact.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-1-ds.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-1-ds.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-1-sds.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-1-sds.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-1.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-1.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-2-sds.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-2-sds.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-2.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-3-sds.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-3-sds.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-4-sds.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-4-sds.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-local-1.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-local-1.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-local-2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-local-2.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-local-3.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-local-3.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/multi-writer-local-4.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/multi-writer-local-4.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/simple-clustering-hive.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/simple-clustering-hive.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/simple-clustering.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/simple-clustering.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/simple-deltastreamer-hive.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/simple-deltastreamer-hive.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/simple-deltastreamer.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/simple-deltastreamer.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/source.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/source.avsc -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-clustering.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-clustering.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-delete-partition.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-delete-partition.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-immutable-dataset.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-immutable-dataset.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-immutable-to-mutable.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-immutable-to-mutable.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-long-running-non-partitioned.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-long-running-non-partitioned.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-long-running.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-long-running.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-medium-clustering.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-medium-clustering.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-non-core-operations.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-non-core-operations.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-pure-bulk-inserts.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-pure-bulk-inserts.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-pure-inserts.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-pure-inserts.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-simple.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-simple.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-sql-partition-cow-updates.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-sql-partition-cow-updates.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/spark-sql-partitioned-managed-cow.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/spark-sql-partitioned-managed-cow.yaml -------------------------------------------------------------------------------- /docker/demo/config/test-suite/target.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/target.avsc -------------------------------------------------------------------------------- /docker/demo/config/test-suite/templates/clustering.yaml.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/templates/clustering.yaml.template -------------------------------------------------------------------------------- /docker/demo/config/test-suite/templates/long_test_suite.yaml.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/templates/long_test_suite.yaml.template -------------------------------------------------------------------------------- /docker/demo/config/test-suite/templates/sanity.yaml.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/templates/sanity.yaml.template -------------------------------------------------------------------------------- /docker/demo/config/test-suite/templates/spark_command.txt.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/templates/spark_command.txt.template -------------------------------------------------------------------------------- /docker/demo/config/test-suite/templates/test.properties.template: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/templates/test.properties.template -------------------------------------------------------------------------------- /docker/demo/config/test-suite/test-clustering.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/test-clustering.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/test-inline-compact.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/test-inline-compact.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/test-metadata-inline-compact.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/test-metadata-inline-compact.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/test-metadata.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/test-metadata.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/test-nonpartitioned-metadata.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/test-nonpartitioned-metadata.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/test-nonpartitioned.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/test-nonpartitioned.properties -------------------------------------------------------------------------------- /docker/demo/config/test-suite/test.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/config/test-suite/test.properties -------------------------------------------------------------------------------- /docker/demo/data/batch_1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/data/batch_1.json -------------------------------------------------------------------------------- /docker/demo/data/batch_2.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/data/batch_2.json -------------------------------------------------------------------------------- /docker/demo/get_min_commit_time_cow.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/get_min_commit_time_cow.sh -------------------------------------------------------------------------------- /docker/demo/get_min_commit_time_mor.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/get_min_commit_time_mor.sh -------------------------------------------------------------------------------- /docker/demo/hive-batch1.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/hive-batch1.commands -------------------------------------------------------------------------------- /docker/demo/hive-batch2-after-compaction.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/hive-batch2-after-compaction.commands -------------------------------------------------------------------------------- /docker/demo/hive-incremental-cow.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/hive-incremental-cow.commands -------------------------------------------------------------------------------- /docker/demo/hive-incremental-mor-ro.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/hive-incremental-mor-ro.commands -------------------------------------------------------------------------------- /docker/demo/hive-incremental-mor-rt.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/hive-incremental-mor-rt.commands -------------------------------------------------------------------------------- /docker/demo/hive-table-check.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/hive-table-check.commands -------------------------------------------------------------------------------- /docker/demo/presto-batch1.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/presto-batch1.commands -------------------------------------------------------------------------------- /docker/demo/presto-batch2-after-compaction.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/presto-batch2-after-compaction.commands -------------------------------------------------------------------------------- /docker/demo/presto-table-check.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/presto-table-check.commands -------------------------------------------------------------------------------- /docker/demo/setup_demo_container.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/setup_demo_container.sh -------------------------------------------------------------------------------- /docker/demo/sparksql-batch1.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/sparksql-batch1.commands -------------------------------------------------------------------------------- /docker/demo/sparksql-batch2.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/sparksql-batch2.commands -------------------------------------------------------------------------------- /docker/demo/sparksql-bootstrap-prep-source.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/sparksql-bootstrap-prep-source.commands -------------------------------------------------------------------------------- /docker/demo/sparksql-incremental.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/sparksql-incremental.commands -------------------------------------------------------------------------------- /docker/demo/sync-validate.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/sync-validate.commands -------------------------------------------------------------------------------- /docker/demo/trino-batch1.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/trino-batch1.commands -------------------------------------------------------------------------------- /docker/demo/trino-batch2-after-compaction.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/trino-batch2-after-compaction.commands -------------------------------------------------------------------------------- /docker/demo/trino-table-check.commands: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/demo/trino-table-check.commands -------------------------------------------------------------------------------- /docker/generate_test_suite.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/generate_test_suite.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base/entrypoint.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base/export_container_ip.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base/export_container_ip.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base_java11/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base_java11/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base_java11/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base_java11/entrypoint.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base_java11/export_container_ip.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base_java11/export_container_ip.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/base_java11/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/base_java11/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/datanode/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/datanode/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/datanode/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/datanode/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/datanode/run_dn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/datanode/run_dn.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/historyserver/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/historyserver/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/historyserver/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/historyserver/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/historyserver/run_history.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/historyserver/run_history.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/conf/beeline-log4j2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/conf/beeline-log4j2.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/conf/hive-env.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/conf/hive-env.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/conf/hive-exec-log4j2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/conf/hive-exec-log4j2.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/conf/hive-log4j2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/conf/hive-log4j2.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/conf/hive-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/conf/hive-site.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/conf/ivysettings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/conf/ivysettings.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/conf/llap-daemon-log4j2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/conf/llap-daemon-log4j2.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/entrypoint.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/hive_base/startup.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/hive_base/startup.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/namenode/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/namenode/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/namenode/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/namenode/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/namenode/run_nn.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/namenode/run_nn.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/bin/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/bin/entrypoint.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/bin/mustache.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/bin/mustache.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/catalog/hive.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/catalog/hive.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/catalog/jmx.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/catalog/jmx.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/catalog/localfile.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/catalog/localfile.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/coordinator.properties.mustache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/coordinator.properties.mustache -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/jvm.config.mustache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/jvm.config.mustache -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/log.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/log.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/node.properties.mustache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/node.properties.mustache -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/etc/worker.properties.mustache: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/etc/worker.properties.mustache -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/lib/mustache.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/lib/mustache.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/prestobase/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/prestobase/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/spark_base/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/spark_base/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/spark_base/execute-step.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/spark_base/execute-step.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/spark_base/finish-step.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/spark_base/finish-step.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/spark_base/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/spark_base/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/spark_base/wait-for-step.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/spark_base/wait-for-step.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkadhoc/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkadhoc/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkadhoc/adhoc.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkadhoc/adhoc.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkadhoc/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkadhoc/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkmaster/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkmaster/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkmaster/master.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkmaster/master.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkmaster/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkmaster/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkworker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkworker/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkworker/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkworker/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/sparkworker/worker.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/sparkworker/worker.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinobase/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinobase/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinobase/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinobase/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinobase/scripts/trino.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinobase/scripts/trino.sh -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinocoordinator/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinocoordinator/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinocoordinator/etc/catalog/hive.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinocoordinator/etc/catalog/hive.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinocoordinator/etc/config.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinocoordinator/etc/config.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinocoordinator/etc/jvm.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinocoordinator/etc/jvm.config -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinocoordinator/etc/log.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinocoordinator/etc/log.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinocoordinator/etc/node.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinocoordinator/etc/node.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinocoordinator/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinocoordinator/pom.xml -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinoworker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinoworker/Dockerfile -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinoworker/etc/catalog/hive.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinoworker/etc/catalog/hive.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinoworker/etc/config.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinoworker/etc/config.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinoworker/etc/jvm.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinoworker/etc/jvm.config -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinoworker/etc/log.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinoworker/etc/log.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinoworker/etc/node.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinoworker/etc/node.properties -------------------------------------------------------------------------------- /docker/hoodie/hadoop/trinoworker/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/hoodie/hadoop/trinoworker/pom.xml -------------------------------------------------------------------------------- /docker/images/push_to_docker_hub.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/images/push_to_docker_hub.png -------------------------------------------------------------------------------- /docker/setup_demo.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/setup_demo.sh -------------------------------------------------------------------------------- /docker/stop_demo.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/docker/stop_demo.sh -------------------------------------------------------------------------------- /hudi-aws/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-aws/pom.xml -------------------------------------------------------------------------------- /hudi-aws/src/main/java/org/apache/hudi/aws/utils/DynamoTableUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-aws/src/main/java/org/apache/hudi/aws/utils/DynamoTableUtils.java -------------------------------------------------------------------------------- /hudi-aws/src/main/java/org/apache/hudi/config/HoodieAWSConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-aws/src/main/java/org/apache/hudi/config/HoodieAWSConfig.java -------------------------------------------------------------------------------- /hudi-aws/src/test/java/org/apache/hudi/aws/testutils/GlueTestUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-aws/src/test/java/org/apache/hudi/aws/testutils/GlueTestUtil.java -------------------------------------------------------------------------------- /hudi-cli/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/pom.xml -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/HoodieCLI.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/HoodieCLI.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/HoodieCliSparkConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/HoodieCliSparkConfig.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/HoodiePrintHelper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/HoodiePrintHelper.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/HoodiePrompt.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/HoodiePrompt.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/Main.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/Table.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/Table.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/TableHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/TableHeader.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/commands/CleansCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/commands/CleansCommand.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/commands/DiffCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/commands/DiffCommand.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/commands/ExportCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/commands/ExportCommand.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/commands/SparkMain.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/commands/SparkMain.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/commands/StatsCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/commands/StatsCommand.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/commands/TableCommand.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/commands/TableCommand.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/utils/CLIUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/utils/CLIUtils.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/utils/CommitUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/utils/CommitUtil.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/utils/HiveUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/utils/HiveUtil.java -------------------------------------------------------------------------------- /hudi-cli/src/main/java/org/apache/hudi/cli/utils/SparkUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/java/org/apache/hudi/cli/utils/SparkUtil.java -------------------------------------------------------------------------------- /hudi-cli/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/resources/application.yml -------------------------------------------------------------------------------- /hudi-cli/src/main/resources/banner.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/main/resources/banner.txt -------------------------------------------------------------------------------- /hudi-cli/src/main/resources/version.txt: -------------------------------------------------------------------------------- 1 | ${hudi.version} -------------------------------------------------------------------------------- /hudi-cli/src/test/java/org/apache/hudi/cli/TestSparkUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/test/java/org/apache/hudi/cli/TestSparkUtil.java -------------------------------------------------------------------------------- /hudi-cli/src/test/resources/clean.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/test/resources/clean.properties -------------------------------------------------------------------------------- /hudi-cli/src/test/resources/table-config.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-cli/src/test/resources/table-config.properties -------------------------------------------------------------------------------- /hudi-client/hudi-client-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-client/hudi-client-common/pom.xml -------------------------------------------------------------------------------- /hudi-client/hudi-client-common/src/test/resources/datadog.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-client/hudi-client-common/src/test/resources/datadog.properties -------------------------------------------------------------------------------- /hudi-client/hudi-flink-client/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-client/hudi-flink-client/pom.xml -------------------------------------------------------------------------------- /hudi-client/hudi-java-client/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-client/hudi-java-client/pom.xml -------------------------------------------------------------------------------- /hudi-client/hudi-spark-client/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-client/hudi-spark-client/pom.xml -------------------------------------------------------------------------------- /hudi-client/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-client/pom.xml -------------------------------------------------------------------------------- /hudi-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/pom.xml -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieArchivedMetaEntry.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieArchivedMetaEntry.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieBootstrapFilePartitionInfo.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieBootstrapFilePartitionInfo.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieBootstrapIndexInfo.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieBootstrapIndexInfo.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieBootstrapPartitionMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieBootstrapPartitionMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieCleanMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieCleanMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieCleanPartitionMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieCleanPartitionMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieCleanerPlan.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieCleanerPlan.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieClusteringGroup.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieClusteringGroup.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieClusteringPlan.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieClusteringPlan.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieClusteringStrategy.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieClusteringStrategy.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieCommitMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieCommitMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieCompactionMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieCompactionMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieCompactionOperation.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieCompactionOperation.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieCompactionStrategy.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieCompactionStrategy.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieDeleteRecordList.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieDeleteRecordList.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieFSPermission.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieFSPermission.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieFileStatus.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieFileStatus.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieIndexCommitMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieIndexCommitMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieIndexPartitionInfo.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieIndexPartitionInfo.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieIndexPlan.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieIndexPlan.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieInstantInfo.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieInstantInfo.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieLSMTimelineInstant.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieLSMTimelineInstant.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieMergeArchiveFilePlan.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieMergeArchiveFilePlan.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodiePath.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodiePath.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieReplaceCommitMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieReplaceCommitMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieRequestedReplaceMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieRequestedReplaceMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieRestoreMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieRestoreMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieRestorePlan.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieRestorePlan.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieRollbackMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieRollbackMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieRollbackPlan.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieRollbackPlan.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieSavePointMetadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieSavePointMetadata.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/avro/HoodieSliceInfo.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/avro/HoodieSliceInfo.avsc -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/ParquetAdapter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/ParquetAdapter.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaCache.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaCache.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/avro/AvroSchemaUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/avro/HoodieAvroUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/avro/HoodieAvroUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/avro/JsonEncoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/avro/JsonEncoder.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/bloom/Key.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/bloom/Key.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/fs/FSUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/fs/FSUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/lock/LockState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/lock/LockState.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/model/BaseFile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/model/BaseFile.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/model/IOType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/model/IOType.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/util/Either.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/util/Either.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/util/Functions.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/util/Functions.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/util/JsonUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/util/JsonUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/util/MapUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/util/MapUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/util/SortUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/util/SortUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/util/TypeUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/util/TypeUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/common/util/hash/Hash.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/common/util/hash/Hash.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/expression/ArrayData.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/expression/ArrayData.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/expression/Expression.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/expression/Expression.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/expression/Literal.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/expression/Literal.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/expression/Predicate.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/expression/Predicate.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/expression/Predicates.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/expression/Predicates.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/expression/StructLike.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/expression/StructLike.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/internal/schema/Type.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/internal/schema/Type.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/internal/schema/Types.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/internal/schema/Types.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/keygen/KeyGenerator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/keygen/KeyGenerator.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/metadata/RawKey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/metadata/RawKey.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/metrics/HoodieGauge.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/metrics/HoodieGauge.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/metrics/MetricUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/metrics/MetricUtils.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/metrics/Metrics.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/metrics/Metrics.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/stats/ValueMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/stats/ValueMetadata.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/stats/ValueType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/stats/ValueType.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/util/Lazy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/util/Lazy.java -------------------------------------------------------------------------------- /hudi-common/src/main/java/org/apache/hudi/util/Transient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/main/java/org/apache/hudi/util/Transient.java -------------------------------------------------------------------------------- /hudi-common/src/test/java/org/apache/hudi/common/TestRegistry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/java/org/apache/hudi/common/TestRegistry.java -------------------------------------------------------------------------------- /hudi-common/src/test/java/org/apache/hudi/metrics/TestMetrics.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/java/org/apache/hudi/metrics/TestMetrics.java -------------------------------------------------------------------------------- /hudi-common/src/test/java/org/apache/hudi/stats/TestValueType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/java/org/apache/hudi/stats/TestValueType.java -------------------------------------------------------------------------------- /hudi-common/src/test/resources/adaptable-payload.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/adaptable-payload.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/complex-schema-evolved.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/complex-schema-evolved.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/complex-schema-evolved.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/complex-schema-evolved.data -------------------------------------------------------------------------------- /hudi-common/src/test/resources/complex-test-evolved.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/complex-test-evolved.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/complex.schema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/complex.schema.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/date-type-invalid.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/date-type-invalid.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/date-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/date-type.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/decimal-logical-type-fixed-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/decimal-logical-type-fixed-type.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/decimal-logical-type-invalid.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/decimal-logical-type-invalid.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/decimal-logical-type-zero-scale.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/decimal-logical-type-zero-scale.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/decimal-logical-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/decimal-logical-type.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/duration-logical-type-invalid.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/duration-logical-type-invalid.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/duration-logical-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/duration-logical-type.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/exampleEvolvedSchema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/exampleEvolvedSchema.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/exampleEvolvedSchemaChangeOrder.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/exampleEvolvedSchemaChangeOrder.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/exampleEvolvedSchemaColumnType.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/exampleEvolvedSchemaColumnType.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/exampleEvolvedSchemaDeleteColumn.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/exampleEvolvedSchemaDeleteColumn.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/exampleSchema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/exampleSchema.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/exampleSchemaWithMetaFields.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/exampleSchemaWithMetaFields.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/exampleSchemaWithUDT.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/exampleSchemaWithUDT.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/file-group-reader/bootstrap_data.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/file-group-reader/bootstrap_data.zip -------------------------------------------------------------------------------- /hudi-common/src/test/resources/format/expected_record_positions.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/format/expected_record_positions.data -------------------------------------------------------------------------------- /hudi-common/src/test/resources/hash/magic_input.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/hash/magic_input.txt -------------------------------------------------------------------------------- /hudi-common/src/test/resources/local-timestamp-logical-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/local-timestamp-logical-type.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/nullRight.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/nullRight.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/nullWrong.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/nullWrong.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/old-version.commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/old-version.commit -------------------------------------------------------------------------------- /hudi-common/src/test/resources/props/test.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/props/test.properties -------------------------------------------------------------------------------- /hudi-common/src/test/resources/sample.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/sample.data -------------------------------------------------------------------------------- /hudi-common/src/test/resources/simple-test-doced.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/simple-test-doced.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/simple-test-evolved-compatible.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/simple-test-evolved-compatible.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/simple-test-evolved.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/simple-test-evolved.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/simple-test.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/simple-test.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/source_evolved.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/source_evolved.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/time-logical-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/time-logical-type.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/timestamp-logical-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/timestamp-logical-type.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/timestamp-logical-type2.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/timestamp-logical-type2.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/timestamp-test-evolved.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/timestamp-test-evolved.avsc -------------------------------------------------------------------------------- /hudi-common/src/test/resources/uuid-logical-type.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-common/src/test/resources/uuid-logical-type.avsc -------------------------------------------------------------------------------- /hudi-examples/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/README.md -------------------------------------------------------------------------------- /hudi-examples/bin/custom-streamer-example.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/bin/custom-streamer-example.sh -------------------------------------------------------------------------------- /hudi-examples/bin/dfs-streamer-example.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/bin/dfs-streamer-example.sh -------------------------------------------------------------------------------- /hudi-examples/bin/hudi-streamer: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/bin/hudi-streamer -------------------------------------------------------------------------------- /hudi-examples/bin/kafka-streamer-example.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/bin/kafka-streamer-example.sh -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-common/pom.xml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/.gitignore -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/README.md -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/dbt_project.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/dbt_project.yml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/models/example/hudi_insert_table.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/models/example/hudi_insert_table.sql -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/models/example/hudi_upsert_table.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/models/example/hudi_upsert_table.sql -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/models/example/schema.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/models/example/schema.yml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/models/example_cdc/profiles.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/models/example_cdc/profiles.sql -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/models/example_cdc/raw_updates.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/models/example_cdc/raw_updates.sql -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-dbt/models/example_cdc/schema.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-dbt/models/example_cdc/schema.yml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-flink/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-flink/pom.xml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-java/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-java/pom.xml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-k8s/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-k8s/Dockerfile -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-k8s/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-k8s/README.md -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-k8s/config/hadoop/core-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-k8s/config/hadoop/core-site.xml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-k8s/config/k8s/flink-deployment.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-k8s/config/k8s/flink-deployment.yaml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-k8s/config/k8s/minio-standalone.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-k8s/config/k8s/minio-standalone.yaml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-k8s/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-k8s/pom.xml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-spark/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-spark/pom.xml -------------------------------------------------------------------------------- /hudi-examples/hudi-examples-spark/src/test/python/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/hudi-examples-spark/src/test/python/README.md -------------------------------------------------------------------------------- /hudi-examples/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-examples/pom.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink/pom.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink/src/test/resources/hive-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink/src/test/resources/hive-site.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink/src/test/resources/test_source.data: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink/src/test/resources/test_source.data -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink1.17.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink1.17.x/pom.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink1.18.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink1.18.x/pom.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink1.19.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink1.19.x/pom.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink1.20.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink1.20.x/pom.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/hudi-flink2.0.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/hudi-flink2.0.x/pom.xml -------------------------------------------------------------------------------- /hudi-flink-datasource/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-flink-datasource/pom.xml -------------------------------------------------------------------------------- /hudi-gcp/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-gcp/pom.xml -------------------------------------------------------------------------------- /hudi-gcp/src/assembly/src.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-gcp/src/assembly/src.xml -------------------------------------------------------------------------------- /hudi-hadoop-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-hadoop-common/pom.xml -------------------------------------------------------------------------------- /hudi-hadoop-common/src/test/resources/parquet-java/all.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-hadoop-common/src/test/resources/parquet-java/all.avsc -------------------------------------------------------------------------------- /hudi-hadoop-common/src/test/resources/parquet-java/fixedToInt96.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-hadoop-common/src/test/resources/parquet-java/fixedToInt96.avsc -------------------------------------------------------------------------------- /hudi-hadoop-common/src/test/resources/props/testdfs.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-hadoop-common/src/test/resources/props/testdfs.properties -------------------------------------------------------------------------------- /hudi-hadoop-mr/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-hadoop-mr/pom.xml -------------------------------------------------------------------------------- /hudi-hadoop-mr/src/test/resources/emptyFile: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /hudi-hadoop-mr/src/test/resources/sample1.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-hadoop-mr/src/test/resources/sample1.avsc -------------------------------------------------------------------------------- /hudi-hadoop-mr/src/test/resources/test_timetype.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-hadoop-mr/src/test/resources/test_timetype.avsc -------------------------------------------------------------------------------- /hudi-integ-test/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/README.md -------------------------------------------------------------------------------- /hudi-integ-test/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/pom.xml -------------------------------------------------------------------------------- /hudi-integ-test/prepare_integration_suite.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/prepare_integration_suite.sh -------------------------------------------------------------------------------- /hudi-integ-test/src/test/java/org/apache/hudi/integ/ITTestBase.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/src/test/java/org/apache/hudi/integ/ITTestBase.java -------------------------------------------------------------------------------- /hudi-integ-test/src/test/resources/hoodie-docker.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/src/test/resources/hoodie-docker.properties -------------------------------------------------------------------------------- /hudi-integ-test/src/test/resources/unit-test-cow-dag.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/src/test/resources/unit-test-cow-dag.yaml -------------------------------------------------------------------------------- /hudi-integ-test/src/test/resources/unit-test-mor-dag.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/src/test/resources/unit-test-mor-dag.yaml -------------------------------------------------------------------------------- /hudi-integ-test/src/test/resources/unit-test-spark-sql-dag.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-integ-test/src/test/resources/unit-test-spark-sql-dag.yaml -------------------------------------------------------------------------------- /hudi-io/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/README.md -------------------------------------------------------------------------------- /hudi-io/hfile_format.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/hfile_format.md -------------------------------------------------------------------------------- /hudi-io/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/pom.xml -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/ApiMaturityLevel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/ApiMaturityLevel.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/PublicAPIClass.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/PublicAPIClass.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/PublicAPIMethod.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/PublicAPIMethod.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/metrics/Counter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/metrics/Counter.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/metrics/Metric.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/metrics/Metric.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/metrics/Registry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/metrics/Registry.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/util/FileIOUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/util/FileIOUtils.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/util/HoodieTimer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/util/HoodieTimer.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/util/Option.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/util/Option.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/util/RetryHelper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/util/RetryHelper.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/common/util/StringUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/common/util/StringUtils.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/exception/HoodieException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/exception/HoodieException.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/BlockIndexEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/BlockIndexEntry.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/ChecksumType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/ChecksumType.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/DataSize.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/DataSize.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlock.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlockCache.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlockCache.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlockReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlockReader.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlockType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileBlockType.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileContext.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileContext.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileCursor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileCursor.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileDataBlock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileDataBlock.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileIndexBlock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileIndexBlock.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileInfo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileInfo.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileMetaBlock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileMetaBlock.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileReader.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileReaderImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileReaderImpl.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileTrailer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileTrailer.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileUtils.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileWriter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileWriter.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileWriterImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/HFileWriterImpl.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/Key.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/Key.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/KeyValue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/KeyValue.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/KeyValueEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/KeyValueEntry.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/hfile/UTF8StringKey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/hfile/UTF8StringKey.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/io/util/IOUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/io/util/IOUtils.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/storage/HoodieStorage.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/storage/HoodieStorage.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/storage/StoragePath.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/storage/StoragePath.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/storage/StoragePathFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/storage/StoragePathFilter.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/storage/StoragePathInfo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/storage/StoragePathInfo.java -------------------------------------------------------------------------------- /hudi-io/src/main/java/org/apache/hudi/storage/StorageSchemes.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/java/org/apache/hudi/storage/StorageSchemes.java -------------------------------------------------------------------------------- /hudi-io/src/main/protobuf/HFile.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/main/protobuf/HFile.proto -------------------------------------------------------------------------------- /hudi-io/src/test/java/org/apache/hudi/io/hfile/TestHFileReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/java/org/apache/hudi/io/hfile/TestHFileReader.java -------------------------------------------------------------------------------- /hudi-io/src/test/java/org/apache/hudi/io/hfile/TestHFileWriter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/java/org/apache/hudi/io/hfile/TestHFileWriter.java -------------------------------------------------------------------------------- /hudi-io/src/test/java/org/apache/hudi/io/hfile/TestHfileBlock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/java/org/apache/hudi/io/hfile/TestHfileBlock.java -------------------------------------------------------------------------------- /hudi-io/src/test/java/org/apache/hudi/io/util/TestHFileUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/java/org/apache/hudi/io/util/TestHFileUtils.java -------------------------------------------------------------------------------- /hudi-io/src/test/java/org/apache/hudi/io/util/TestIOUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/java/org/apache/hudi/io/util/TestIOUtils.java -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hbase-generated.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hbase-generated.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi-generated.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi-generated.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi_0_10_hbase_1_2_3_complex.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi_0_10_hbase_1_2_3_complex.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi_0_10_hbase_1_2_3_simple.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi_0_10_hbase_1_2_3_simple.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi_0_11_hbase_2_4_9_complex.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi_0_11_hbase_2_4_9_complex.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi_0_11_hbase_2_4_9_simple.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi_0_11_hbase_2_4_9_simple.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi_0_9_hbase_1_2_3_complex.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi_0_9_hbase_1_2_3_complex.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi_0_9_hbase_1_2_3_simple.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi_0_9_hbase_1_2_3_simple.hfile -------------------------------------------------------------------------------- /hudi-io/src/test/resources/hfile/hudi_1_0_hbase_2_4_9_no_entry.hfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-io/src/test/resources/hfile/hudi_1_0_hbase_2_4_9_no_entry.hfile -------------------------------------------------------------------------------- /hudi-kafka-connect/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/README.md -------------------------------------------------------------------------------- /hudi-kafka-connect/demo/config-sink-hive.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/demo/config-sink-hive.json -------------------------------------------------------------------------------- /hudi-kafka-connect/demo/config-sink.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/demo/config-sink.json -------------------------------------------------------------------------------- /hudi-kafka-connect/demo/connect-distributed.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/demo/connect-distributed.properties -------------------------------------------------------------------------------- /hudi-kafka-connect/demo/setupKafka.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/demo/setupKafka.sh -------------------------------------------------------------------------------- /hudi-kafka-connect/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/pom.xml -------------------------------------------------------------------------------- /hudi-kafka-connect/src/main/resources/ControlMessage.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/src/main/resources/ControlMessage.proto -------------------------------------------------------------------------------- /hudi-kafka-connect/src/test/resources/hadoop_conf/core-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/src/test/resources/hadoop_conf/core-site.xml -------------------------------------------------------------------------------- /hudi-kafka-connect/src/test/resources/hadoop_conf/hdfs-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-kafka-connect/src/test/resources/hadoop_conf/hdfs-site.xml -------------------------------------------------------------------------------- /hudi-notebooks/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/.dockerignore -------------------------------------------------------------------------------- /hudi-notebooks/.gitignore: -------------------------------------------------------------------------------- 1 | data 2 | -------------------------------------------------------------------------------- /hudi-notebooks/Dockerfile.hive: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/Dockerfile.hive -------------------------------------------------------------------------------- /hudi-notebooks/Dockerfile.spark: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/Dockerfile.spark -------------------------------------------------------------------------------- /hudi-notebooks/Dockerfile.trino: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/Dockerfile.trino -------------------------------------------------------------------------------- /hudi-notebooks/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/README.md -------------------------------------------------------------------------------- /hudi-notebooks/build.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/build.sh -------------------------------------------------------------------------------- /hudi-notebooks/conf/hive/metastore-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/conf/hive/metastore-site.xml -------------------------------------------------------------------------------- /hudi-notebooks/conf/spark/hudi-defaults.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/conf/spark/hudi-defaults.conf -------------------------------------------------------------------------------- /hudi-notebooks/conf/spark/spark-defaults.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/conf/spark/spark-defaults.conf -------------------------------------------------------------------------------- /hudi-notebooks/conf/trino/catalog/hive.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/conf/trino/catalog/hive.properties -------------------------------------------------------------------------------- /hudi-notebooks/conf/trino/catalog/hudi.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/conf/trino/catalog/hudi.properties -------------------------------------------------------------------------------- /hudi-notebooks/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/docker-compose.yml -------------------------------------------------------------------------------- /hudi-notebooks/entrypoint.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/entrypoint.sh -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/01-crud-operations.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/01-crud-operations.ipynb -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/02-query-types.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/02-query-types.ipynb -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/03-scd-type2_and_type4.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/03-scd-type2_and_type4.ipynb -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/04-schema-evolution.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/04-schema-evolution.ipynb -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/05-mastering-sql-procedures.ipynb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/05-mastering-sql-procedures.ipynb -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/images/Hudi_SQL_Procedures.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/images/Hudi_SQL_Procedures.png -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/images/Spark_Hudi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/images/Spark_Hudi.png -------------------------------------------------------------------------------- /hudi-notebooks/notebooks/utils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/notebooks/utils.py -------------------------------------------------------------------------------- /hudi-notebooks/run_spark_hudi.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-notebooks/run_spark_hudi.sh -------------------------------------------------------------------------------- /hudi-platform-service/hudi-metaserver/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-platform-service/hudi-metaserver/README.md -------------------------------------------------------------------------------- /hudi-platform-service/hudi-metaserver/hudi-metaserver-client/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-platform-service/hudi-metaserver/hudi-metaserver-client/pom.xml -------------------------------------------------------------------------------- /hudi-platform-service/hudi-metaserver/hudi-metaserver-server/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-platform-service/hudi-metaserver/hudi-metaserver-server/pom.xml -------------------------------------------------------------------------------- /hudi-platform-service/hudi-metaserver/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-platform-service/hudi-metaserver/pom.xml -------------------------------------------------------------------------------- /hudi-platform-service/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-platform-service/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/README.md -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark-common/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark/run_hoodie_app.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark/run_hoodie_app.sh -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark/run_hoodie_generate_app.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark/run_hoodie_generate_app.sh -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark/run_hoodie_streaming_app.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark/run_hoodie_streaming_app.sh -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark/src/test/java/HoodieJavaApp.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark/src/test/java/HoodieJavaApp.java -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark3-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark3-common/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark3.3.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark3.3.x/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark3.4.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark3.4.x/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark3.5.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark3.5.x/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark4-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark4-common/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/hudi-spark4.0.x/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/hudi-spark4.0.x/pom.xml -------------------------------------------------------------------------------- /hudi-spark-datasource/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-spark-datasource/pom.xml -------------------------------------------------------------------------------- /hudi-sync/hudi-adb-sync/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-adb-sync/pom.xml -------------------------------------------------------------------------------- /hudi-sync/hudi-adb-sync/src/assembly/src.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-adb-sync/src/assembly/src.xml -------------------------------------------------------------------------------- /hudi-sync/hudi-datahub-sync/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-datahub-sync/pom.xml -------------------------------------------------------------------------------- /hudi-sync/hudi-datahub-sync/src/test/resources/multi-ca-cert.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-datahub-sync/src/test/resources/multi-ca-cert.pem -------------------------------------------------------------------------------- /hudi-sync/hudi-datahub-sync/src/test/resources/test-ca-cert.pem: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-datahub-sync/src/test/resources/test-ca-cert.pem -------------------------------------------------------------------------------- /hudi-sync/hudi-datahub-sync/src/test/resources/test-keystore.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-datahub-sync/src/test/resources/test-keystore.p12 -------------------------------------------------------------------------------- /hudi-sync/hudi-datahub-sync/src/test/resources/test-truststore.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-datahub-sync/src/test/resources/test-truststore.p12 -------------------------------------------------------------------------------- /hudi-sync/hudi-hive-sync/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-hive-sync/pom.xml -------------------------------------------------------------------------------- /hudi-sync/hudi-hive-sync/run_hive_global_commit_tool.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-hive-sync/run_hive_global_commit_tool.sh -------------------------------------------------------------------------------- /hudi-sync/hudi-hive-sync/run_sync_tool.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-hive-sync/run_sync_tool.sh -------------------------------------------------------------------------------- /hudi-sync/hudi-hive-sync/src/assembly/src.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-hive-sync/src/assembly/src.xml -------------------------------------------------------------------------------- /hudi-sync/hudi-sync-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/hudi-sync-common/pom.xml -------------------------------------------------------------------------------- /hudi-sync/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-sync/pom.xml -------------------------------------------------------------------------------- /hudi-tests-common/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-tests-common/pom.xml -------------------------------------------------------------------------------- /hudi-tests-common/src/main/resources/log4j2-surefire.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-tests-common/src/main/resources/log4j2-surefire.properties -------------------------------------------------------------------------------- /hudi-tests-common/src/main/resources/log4j2.component.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-tests-common/src/main/resources/log4j2.component.properties -------------------------------------------------------------------------------- /hudi-timeline-service/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-timeline-service/pom.xml -------------------------------------------------------------------------------- /hudi-trino-plugin/.mvn/modernizer/violations.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/.mvn/modernizer/violations.xml -------------------------------------------------------------------------------- /hudi-trino-plugin/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/pom.xml -------------------------------------------------------------------------------- /hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiConfig.java -------------------------------------------------------------------------------- /hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiModule.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiModule.java -------------------------------------------------------------------------------- /hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiPlugin.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiPlugin.java -------------------------------------------------------------------------------- /hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiSplit.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiSplit.java -------------------------------------------------------------------------------- /hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiUtil.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiUtil.java -------------------------------------------------------------------------------- /hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/TableType.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/TableType.java -------------------------------------------------------------------------------- /hudi-trino-plugin/src/test/resources/long_timestamp.parquet: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-trino-plugin/src/test/resources/long_timestamp.parquet -------------------------------------------------------------------------------- /hudi-utilities/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/pom.xml -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/IncrementalPull.sqltemplate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/IncrementalPull.sqltemplate -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/col-stats/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/col-stats/README.md -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/data/avro_sanitization.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/data/avro_sanitization.json -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/data/nested_data_1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/data/nested_data_1.json -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/data/nested_data_2.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/data/nested_data_2.json -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/data/nested_data_3.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/data/nested_data_3.json -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/data/schema-evolution/plain.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/data/schema-evolution/plain.json -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/data/schema-evolution/start.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/data/schema-evolution/start.json -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/exporter/sql-file-transformer.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/exporter/sql-file-transformer.sql -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/hive-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/hive-site.xml -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/logical-repair/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/logical-repair/README.md -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/logical-repair/schema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/logical-repair/schema.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/schema-provider/proto/sample.proto: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/schema-provider/proto/sample.proto -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/schema/nested_data_schema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/schema/nested_data_schema.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/schema/sample_data_schema.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/schema/sample_data_schema.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/schema/sample_gcs_data.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/schema/sample_gcs_data.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/base.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/base.properties -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/gcs-metadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/gcs-metadata.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/indexer.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/indexer.properties -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/s3-metadata.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/s3-metadata.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/source-jdbc.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/source-jdbc.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/source.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/source.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/source_uber.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/source_uber.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/target.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/target.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/target_uber.avsc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/target_uber.avsc -------------------------------------------------------------------------------- /hudi-utilities/src/test/resources/streamer-config/triprec.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/hudi-utilities/src/test/resources/streamer-config/triprec.sql -------------------------------------------------------------------------------- /packaging/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/README.md -------------------------------------------------------------------------------- /packaging/bundle-validation/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/Dockerfile -------------------------------------------------------------------------------- /packaging/bundle-validation/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/README.md -------------------------------------------------------------------------------- /packaging/bundle-validation/base-dev/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base-dev/Dockerfile -------------------------------------------------------------------------------- /packaging/bundle-validation/base/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/Dockerfile -------------------------------------------------------------------------------- /packaging/bundle-validation/base/build_flink1170hive313spark351.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/build_flink1170hive313spark351.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/base/build_flink1171hive313spark334.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/build_flink1171hive313spark334.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/base/build_flink1180hive313spark350.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/build_flink1180hive313spark350.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/base/build_flink1181hive313spark343.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/build_flink1181hive313spark343.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/base/build_flink1190hive313spark350.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/build_flink1190hive313spark350.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/base/build_flink1200hive313spark350.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/build_flink1200hive313spark350.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/base/build_flink200hive313spark351.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/base/build_flink200hive313spark351.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/ci_run.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/ci_run.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/cli/commands.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/cli/commands.txt -------------------------------------------------------------------------------- /packaging/bundle-validation/conf/core-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/conf/core-site.xml -------------------------------------------------------------------------------- /packaging/bundle-validation/conf/hdfs-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/conf/hdfs-site.xml -------------------------------------------------------------------------------- /packaging/bundle-validation/conf/hive-site.hive2.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/conf/hive-site.hive2.xml -------------------------------------------------------------------------------- /packaging/bundle-validation/conf/hive-site.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/conf/hive-site.xml -------------------------------------------------------------------------------- /packaging/bundle-validation/conf/hudi-defaults.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/conf/hudi-defaults.conf -------------------------------------------------------------------------------- /packaging/bundle-validation/conf/spark-defaults.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/conf/spark-defaults.conf -------------------------------------------------------------------------------- /packaging/bundle-validation/docker_java17/TestHiveClientUtils.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/docker_java17/TestHiveClientUtils.scala -------------------------------------------------------------------------------- /packaging/bundle-validation/docker_java17/docker_java17_test.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/docker_java17/docker_java17_test.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/flink/compact.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/flink/compact.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/flink/insert.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/flink/insert.sql -------------------------------------------------------------------------------- /packaging/bundle-validation/kafka/config-sink.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/kafka/config-sink.json -------------------------------------------------------------------------------- /packaging/bundle-validation/kafka/consume.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/kafka/consume.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/kafka/produce.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/kafka/produce.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/run_docker_java17.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/run_docker_java17.sh -------------------------------------------------------------------------------- /packaging/bundle-validation/service/read.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/service/read.scala -------------------------------------------------------------------------------- /packaging/bundle-validation/service/write.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/service/write.scala -------------------------------------------------------------------------------- /packaging/bundle-validation/spark_hadoop_mr/validate.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/spark_hadoop_mr/validate.scala -------------------------------------------------------------------------------- /packaging/bundle-validation/spark_hadoop_mr/write.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/spark_hadoop_mr/write.scala -------------------------------------------------------------------------------- /packaging/bundle-validation/utilities/hoodieapp.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/utilities/hoodieapp.properties -------------------------------------------------------------------------------- /packaging/bundle-validation/utilities/validate.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/utilities/validate.scala -------------------------------------------------------------------------------- /packaging/bundle-validation/validate.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/bundle-validation/validate.sh -------------------------------------------------------------------------------- /packaging/hudi-aws-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-aws-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-cli-bundle/conf/hudi-env.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-cli-bundle/conf/hudi-env.sh -------------------------------------------------------------------------------- /packaging/hudi-cli-bundle/conf/log4j2.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-cli-bundle/conf/log4j2.properties -------------------------------------------------------------------------------- /packaging/hudi-cli-bundle/hudi-cli-with-bundle.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-cli-bundle/hudi-cli-with-bundle.sh -------------------------------------------------------------------------------- /packaging/hudi-cli-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-cli-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-datahub-sync-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-datahub-sync-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-flink-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-flink-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-gcp-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-gcp-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-hadoop-mr-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-hadoop-mr-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-hive-sync-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-hive-sync-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-integ-test-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-integ-test-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-kafka-connect-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-kafka-connect-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-metaserver-server-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-metaserver-server-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-presto-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-presto-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-spark-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-spark-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-timeline-server-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-timeline-server-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-timeline-server-bundle/run_server.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-timeline-server-bundle/run_server.sh -------------------------------------------------------------------------------- /packaging/hudi-trino-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-trino-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-utilities-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-utilities-bundle/pom.xml -------------------------------------------------------------------------------- /packaging/hudi-utilities-slim-bundle/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-utilities-slim-bundle/README.md -------------------------------------------------------------------------------- /packaging/hudi-utilities-slim-bundle/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/packaging/hudi-utilities-slim-bundle/pom.xml -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/pom.xml -------------------------------------------------------------------------------- /release/release_guide.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/release/release_guide.md -------------------------------------------------------------------------------- /release/release_guide_overview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/release/release_guide_overview.jpg -------------------------------------------------------------------------------- /rfc/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/README.md -------------------------------------------------------------------------------- /rfc/rfc-100/rfc-100-autonomous-driving.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-100/rfc-100-autonomous-driving.png -------------------------------------------------------------------------------- /rfc/rfc-100/rfc-100.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-100/rfc-100.md -------------------------------------------------------------------------------- /rfc/rfc-101/rfc-101.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-101/rfc-101.md -------------------------------------------------------------------------------- /rfc/rfc-27/col_stats.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-27/col_stats.png -------------------------------------------------------------------------------- /rfc/rfc-27/rfc-27.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-27/rfc-27.md -------------------------------------------------------------------------------- /rfc/rfc-34/big-query-arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-34/big-query-arch.png -------------------------------------------------------------------------------- /rfc/rfc-34/rfc-34.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-34/rfc-34.md -------------------------------------------------------------------------------- /rfc/rfc-37/metadata_index_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-37/metadata_index_1.png -------------------------------------------------------------------------------- /rfc/rfc-37/metadata_index_bloom_partition.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-37/metadata_index_bloom_partition.png -------------------------------------------------------------------------------- /rfc/rfc-37/metadata_index_col_stats.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-37/metadata_index_col_stats.png -------------------------------------------------------------------------------- /rfc/rfc-37/rfc-37.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-37/rfc-37.md -------------------------------------------------------------------------------- /rfc/rfc-38/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-38/1.png -------------------------------------------------------------------------------- /rfc/rfc-38/rfc-38.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-38/rfc-38.md -------------------------------------------------------------------------------- /rfc/rfc-39/arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-39/arch.png -------------------------------------------------------------------------------- /rfc/rfc-39/rfc-39.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-39/rfc-39.md -------------------------------------------------------------------------------- /rfc/rfc-40/Hudi_Connector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-40/Hudi_Connector.png -------------------------------------------------------------------------------- /rfc/rfc-40/rfc-40.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-40/rfc-40.md -------------------------------------------------------------------------------- /rfc/rfc-41/rfc-41.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-41/rfc-41.md -------------------------------------------------------------------------------- /rfc/rfc-42/basic_bucket_hashing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-42/basic_bucket_hashing.png -------------------------------------------------------------------------------- /rfc/rfc-42/bucket_resizing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-42/bucket_resizing.png -------------------------------------------------------------------------------- /rfc/rfc-42/bucket_resizing_virtual_log_file.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-42/bucket_resizing_virtual_log_file.png -------------------------------------------------------------------------------- /rfc/rfc-42/consistent_hashing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-42/consistent_hashing.png -------------------------------------------------------------------------------- /rfc/rfc-42/rfc-42.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-42/rfc-42.md -------------------------------------------------------------------------------- /rfc/rfc-44/presto-connector.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-44/presto-connector.png -------------------------------------------------------------------------------- /rfc/rfc-44/rfc-44.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-44/rfc-44.md -------------------------------------------------------------------------------- /rfc/rfc-45/async_metadata_index.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-45/async_metadata_index.png -------------------------------------------------------------------------------- /rfc/rfc-45/rfc-45.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-45/rfc-45.md -------------------------------------------------------------------------------- /rfc/rfc-46/rfc-46.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-46/rfc-46.md -------------------------------------------------------------------------------- /rfc/rfc-47/process.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-47/process.png -------------------------------------------------------------------------------- /rfc/rfc-47/rfc-47.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-47/rfc-47.md -------------------------------------------------------------------------------- /rfc/rfc-48/async_logcompaction_issues.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-48/async_logcompaction_issues.jpeg -------------------------------------------------------------------------------- /rfc/rfc-48/base_case.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-48/base_case.jpeg -------------------------------------------------------------------------------- /rfc/rfc-48/rfc-48.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-48/rfc-48.md -------------------------------------------------------------------------------- /rfc/rfc-48/rollback_block_scenario.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-48/rollback_block_scenario.jpeg -------------------------------------------------------------------------------- /rfc/rfc-49/DatasetProfile.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-49/DatasetProfile.png -------------------------------------------------------------------------------- /rfc/rfc-49/DatasetProperties.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-49/DatasetProperties.png -------------------------------------------------------------------------------- /rfc/rfc-49/SchemaMetadata.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-49/SchemaMetadata.png -------------------------------------------------------------------------------- /rfc/rfc-49/rfc-49.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-49/rfc-49.md -------------------------------------------------------------------------------- /rfc/rfc-50/ComparisonDiagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-50/ComparisonDiagram.png -------------------------------------------------------------------------------- /rfc/rfc-50/CurrentDesign.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-50/CurrentDesign.png -------------------------------------------------------------------------------- /rfc/rfc-50/Design.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-50/Design.png -------------------------------------------------------------------------------- /rfc/rfc-50/SchematicDiagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-50/SchematicDiagram.png -------------------------------------------------------------------------------- /rfc/rfc-50/rfc-50.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-50/rfc-50.md -------------------------------------------------------------------------------- /rfc/rfc-51/code-paths.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-51/code-paths.jpg -------------------------------------------------------------------------------- /rfc/rfc-51/logic-flows.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-51/logic-flows.jpg -------------------------------------------------------------------------------- /rfc/rfc-51/query_cdc_on_mor.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-51/query_cdc_on_mor.jpg -------------------------------------------------------------------------------- /rfc/rfc-51/read_cdc_log_file.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-51/read_cdc_log_file.jpg -------------------------------------------------------------------------------- /rfc/rfc-51/rfc-51.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-51/rfc-51.md -------------------------------------------------------------------------------- /rfc/rfc-51/scenario-illustration.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-51/scenario-illustration.jpg -------------------------------------------------------------------------------- /rfc/rfc-53/DisruptorExecutor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-53/DisruptorExecutor.png -------------------------------------------------------------------------------- /rfc/rfc-53/rfc-53.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-53/rfc-53.md -------------------------------------------------------------------------------- /rfc/rfc-55/hudi-sync-class-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-55/hudi-sync-class-diagram.png -------------------------------------------------------------------------------- /rfc/rfc-55/hudi-sync-flows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-55/hudi-sync-flows.png -------------------------------------------------------------------------------- /rfc/rfc-55/rfc-55.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-55/rfc-55.md -------------------------------------------------------------------------------- /rfc/rfc-56/figure1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-56/figure1.png -------------------------------------------------------------------------------- /rfc/rfc-56/figure2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-56/figure2.png -------------------------------------------------------------------------------- /rfc/rfc-56/figure3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-56/figure3.png -------------------------------------------------------------------------------- /rfc/rfc-56/figure4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-56/figure4.png -------------------------------------------------------------------------------- /rfc/rfc-56/flow1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-56/flow1.png -------------------------------------------------------------------------------- /rfc/rfc-56/rfc-56.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-56/rfc-56.md -------------------------------------------------------------------------------- /rfc/rfc-57/rfc-57.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-57/rfc-57.md -------------------------------------------------------------------------------- /rfc/rfc-60/read_flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-60/read_flow.png -------------------------------------------------------------------------------- /rfc/rfc-60/rfc-60.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-60/rfc-60.md -------------------------------------------------------------------------------- /rfc/rfc-60/wrapper_fs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-60/wrapper_fs.png -------------------------------------------------------------------------------- /rfc/rfc-63/rfc-63.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-63/rfc-63.md -------------------------------------------------------------------------------- /rfc/rfc-65/rfc-65.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-65/rfc-65.md -------------------------------------------------------------------------------- /rfc/rfc-66/compaction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-66/compaction.png -------------------------------------------------------------------------------- /rfc/rfc-66/log_file_sequence.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-66/log_file_sequence.png -------------------------------------------------------------------------------- /rfc/rfc-66/multi_writer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-66/multi_writer.png -------------------------------------------------------------------------------- /rfc/rfc-66/non_serial_compaction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-66/non_serial_compaction.png -------------------------------------------------------------------------------- /rfc/rfc-66/rfc-66.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-66/rfc-66.md -------------------------------------------------------------------------------- /rfc/rfc-68/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-68/1.jpg -------------------------------------------------------------------------------- /rfc/rfc-68/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-68/2.jpg -------------------------------------------------------------------------------- /rfc/rfc-68/3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-68/3.jpg -------------------------------------------------------------------------------- /rfc/rfc-68/4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-68/4.jpg -------------------------------------------------------------------------------- /rfc/rfc-68/rfc-68.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-68/rfc-68.md -------------------------------------------------------------------------------- /rfc/rfc-69/hudi-dblayers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-69/hudi-dblayers.png -------------------------------------------------------------------------------- /rfc/rfc-69/rfc-69.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-69/rfc-69.md -------------------------------------------------------------------------------- /rfc/rfc-73/rfc-73.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-73/rfc-73.md -------------------------------------------------------------------------------- /rfc/rfc-76/rfc-76.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-76/rfc-76.md -------------------------------------------------------------------------------- /rfc/rfc-77/rfc-77.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-77/rfc-77.md -------------------------------------------------------------------------------- /rfc/rfc-78/rfc-78.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-78/rfc-78.md -------------------------------------------------------------------------------- /rfc/rfc-8/metadata_record_index.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-8/metadata_record_index.jpg -------------------------------------------------------------------------------- /rfc/rfc-8/rfc-8.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-8/rfc-8.md -------------------------------------------------------------------------------- /rfc/rfc-80/append-handle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/append-handle.png -------------------------------------------------------------------------------- /rfc/rfc-80/bucket.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/bucket.png -------------------------------------------------------------------------------- /rfc/rfc-80/family-compaction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/family-compaction.png -------------------------------------------------------------------------------- /rfc/rfc-80/file-group.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/file-group.png -------------------------------------------------------------------------------- /rfc/rfc-80/grand-compaction.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/grand-compaction.png -------------------------------------------------------------------------------- /rfc/rfc-80/process-read.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/process-read.png -------------------------------------------------------------------------------- /rfc/rfc-80/process-write.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/process-write.png -------------------------------------------------------------------------------- /rfc/rfc-80/rfc-80.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/rfc-80.md -------------------------------------------------------------------------------- /rfc/rfc-80/row-reader.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/row-reader.png -------------------------------------------------------------------------------- /rfc/rfc-80/table.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-80/table.png -------------------------------------------------------------------------------- /rfc/rfc-82/rfc-82.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-82/rfc-82.md -------------------------------------------------------------------------------- /rfc/rfc-83/rfc-83.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-83/rfc-83.md -------------------------------------------------------------------------------- /rfc/rfc-83/timeline.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-83/timeline.png -------------------------------------------------------------------------------- /rfc/rfc-84/datastream_hoodietablesink.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-84/datastream_hoodietablesink.png -------------------------------------------------------------------------------- /rfc/rfc-84/rfc-84.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-84/rfc-84.md -------------------------------------------------------------------------------- /rfc/rfc-85/images/1-create-subtask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/1-create-subtask.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/10-log-work-set-remaining-estimate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/10-log-work-set-remaining-estimate.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/11-story-screen-after-log-work.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/11-story-screen-after-log-work.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/12-sprint-1-burndown-chart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/12-sprint-1-burndown-chart.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/13-sprint-1-burndown-details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/13-sprint-1-burndown-details.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/14-story-add-new-subtask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/14-story-add-new-subtask.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/15-sprint-2-burndown-chart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/15-sprint-2-burndown-chart.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/16-sprint-2-burndown-details.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/16-sprint-2-burndown-details.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/17-sprint-config-estimation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/17-sprint-config-estimation.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/2-create-subtask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/2-create-subtask.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/3-set-original-estimate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/3-set-original-estimate.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/4-story-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/4-story-screen.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/5-subtask-screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/5-subtask-screen.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/6-move-issue-to-sprint-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/6-move-issue-to-sprint-1.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/7-sprint-1-board.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/7-sprint-1-board.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/8-log-work.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/8-log-work.png -------------------------------------------------------------------------------- /rfc/rfc-85/images/9-log-work-timespent.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/images/9-log-work-timespent.png -------------------------------------------------------------------------------- /rfc/rfc-85/rfc-85.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-85/rfc-85.md -------------------------------------------------------------------------------- /rfc/rfc-87/rfc-87.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-87/rfc-87.md -------------------------------------------------------------------------------- /rfc/rfc-89/archive.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-89/archive.jpg -------------------------------------------------------------------------------- /rfc/rfc-89/dry-run.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-89/dry-run.jpg -------------------------------------------------------------------------------- /rfc/rfc-89/rescale.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-89/rescale.jpg -------------------------------------------------------------------------------- /rfc/rfc-89/rfc-89.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-89/rfc-89.md -------------------------------------------------------------------------------- /rfc/rfc-89/workflow.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-89/workflow.jpg -------------------------------------------------------------------------------- /rfc/rfc-91/dfs-locking-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-91/dfs-locking-diagram.png -------------------------------------------------------------------------------- /rfc/rfc-91/rfc-91.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-91/rfc-91.md -------------------------------------------------------------------------------- /rfc/rfc-92/bitmap_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-92/bitmap_example.png -------------------------------------------------------------------------------- /rfc/rfc-92/bitmap_payload.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-92/bitmap_payload.png -------------------------------------------------------------------------------- /rfc/rfc-92/prune_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-92/prune_example.png -------------------------------------------------------------------------------- /rfc/rfc-92/rfc-92.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-92/rfc-92.md -------------------------------------------------------------------------------- /rfc/rfc-93/flow_and_arch.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-93/flow_and_arch.jpg -------------------------------------------------------------------------------- /rfc/rfc-93/rfc-93.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-93/rfc-93.md -------------------------------------------------------------------------------- /rfc/rfc-95/hudi_flink_source.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-95/hudi_flink_source.png -------------------------------------------------------------------------------- /rfc/rfc-95/rfc-95.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-95/rfc-95.md -------------------------------------------------------------------------------- /rfc/rfc-98/initial_integration_with_Spark.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-98/initial_integration_with_Spark.jpg -------------------------------------------------------------------------------- /rfc/rfc-98/rfc-98.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/rfc-98/rfc-98.md -------------------------------------------------------------------------------- /rfc/template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/rfc/template.md -------------------------------------------------------------------------------- /scripts/checkout_pr.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/checkout_pr.sh -------------------------------------------------------------------------------- /scripts/dependency.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/dependency.sh -------------------------------------------------------------------------------- /scripts/grafana-dashboard.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/grafana-dashboard.json -------------------------------------------------------------------------------- /scripts/jacoco/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/jacoco/README.md -------------------------------------------------------------------------------- /scripts/jacoco/download_jacoco.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/jacoco/download_jacoco.sh -------------------------------------------------------------------------------- /scripts/jacoco/generate_jacoco_coverage_report.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/jacoco/generate_jacoco_coverage_report.sh -------------------------------------------------------------------------------- /scripts/jacoco/merge_jacoco_exec_files.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/jacoco/merge_jacoco_exec_files.sh -------------------------------------------------------------------------------- /scripts/jacoco/merge_jacoco_job_files.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/jacoco/merge_jacoco_job_files.sh -------------------------------------------------------------------------------- /scripts/pr_compliance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/pr_compliance.py -------------------------------------------------------------------------------- /scripts/pr_push_command.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/pr_push_command.sh -------------------------------------------------------------------------------- /scripts/release/create_source_directory.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/create_source_directory.sh -------------------------------------------------------------------------------- /scripts/release/create_source_release.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/create_source_release.sh -------------------------------------------------------------------------------- /scripts/release/cut_release_branch.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/cut_release_branch.sh -------------------------------------------------------------------------------- /scripts/release/deploy_staging_jars.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/deploy_staging_jars.sh -------------------------------------------------------------------------------- /scripts/release/generate_jar_path.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/generate_jar_path.py -------------------------------------------------------------------------------- /scripts/release/generate_notice.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/generate_notice.sh -------------------------------------------------------------------------------- /scripts/release/preparation_before_release.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/preparation_before_release.sh -------------------------------------------------------------------------------- /scripts/release/validate_source_binary_files.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/validate_source_binary_files.sh -------------------------------------------------------------------------------- /scripts/release/validate_source_copyright.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/validate_source_copyright.sh -------------------------------------------------------------------------------- /scripts/release/validate_source_rat.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/validate_source_rat.sh -------------------------------------------------------------------------------- /scripts/release/validate_staged_bundles.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/validate_staged_bundles.sh -------------------------------------------------------------------------------- /scripts/release/validate_staged_release.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/scripts/release/validate_staged_release.sh -------------------------------------------------------------------------------- /style/checkstyle-suppressions.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/style/checkstyle-suppressions.xml -------------------------------------------------------------------------------- /style/checkstyle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/style/checkstyle.xml -------------------------------------------------------------------------------- /style/import-control.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/style/import-control.xml -------------------------------------------------------------------------------- /style/scalastyle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apache/hudi/HEAD/style/scalastyle.xml --------------------------------------------------------------------------------