yuzhao.cyz [Sat, 27 Nov 2021 09:22:39 +0000 (17:22 +0800)]
Create release branch for version 0.10.0.
xiarixiaoyao [Sat, 27 Nov 2021 07:20:19 +0000 (15:20 +0800)]
[HUDI-2102] Support hilbert curve for hudi (#3952)
Co-authored-by: Y Ethan Guo <ethan.guoyihua@gmail.com>
Manoj Govindassamy [Sat, 27 Nov 2021 07:19:26 +0000 (23:19 -0800)]
[HUDI-2475] [HUDI-2862] Metadata table creation and avoid bootstrapping race for write client & add locking for upgrade (#4114)
Co-authored-by: Sivabalan Narayanan <n.siva.b@gmail.com>
Raymond Xu [Sat, 27 Nov 2021 03:59:20 +0000 (19:59 -0800)]
[HUDI-2868] Fix skipped HoodieSparkSqlWriterSuite (#4125)
- Co-authored-by: Yann Byron <biyan900116@gmail.com>
Sivabalan Narayanan [Sat, 27 Nov 2021 00:22:53 +0000 (19:22 -0500)]
[MINOR] Follow ups from HUDI-2861 (re-use same rollback instant for failed rollback) (#4133)
xuzifu666 [Fri, 26 Nov 2021 23:11:01 +0000 (07:11 +0800)]
[HUDI-2856] Bit cask disk map delete modified (#4116)
* modified BitCaskDiskMap_close_function
* change iterators location to finally
* Update BitCaskDiskMap.java
rmahindra123 [Fri, 26 Nov 2021 23:09:32 +0000 (15:09 -0800)]
[HUDI-2864] Fix README and scripts with current limitations of hive sync (#4129)
* Fix README with current limitations of hive sync
* Fix README with current limitations of hive sync
* Fix dep issue
* Fix Copy on Write flow
Co-authored-by: Rajesh Mahindra <rmahindra@Rajeshs-MacBook-Pro.local>
huleilei [Fri, 26 Nov 2021 21:56:03 +0000 (05:56 +0800)]
[HUDI-2848] Excluse guava from hudi-cli pom (#4100)
Manoj Govindassamy [Fri, 26 Nov 2021 21:44:16 +0000 (13:44 -0800)]
[HUDI-2845] Metadata CLI - files/partition file listing fix and new validate option (#4092)
- Co-authored-by: Sivabalan Narayanan <n.siva.b@gmail.com>
Y Ethan Guo [Fri, 26 Nov 2021 21:41:05 +0000 (13:41 -0800)]
[HUDI-2767] Enabling timeline-server-based marker as default (#4112)
- Changes the default config of marker type (HoodieWriteConfig.MARKERS_TYPE or hoodie.write.markers.type) from DIRECT to TIMELINE_SERVER_BASED for Spark Engine.
- Adds engine-specific marker type configs: Spark -> TIMELINE_SERVER_BASED, Flink -> DIRECT, Java -> DIRECT.
- Uses DIRECT markers as well for Spark structured streaming due to timeline server only available for the first mini-batch.
- Fixes the marker creation method for non-partitioned table in TimelineServerBasedWriteMarkers.
- Adds the fallback to direct markers even when TIMELINE_SERVER_BASED is configured, in WriteMarkersFactory: when HDFS is used, or embedded timeline server is disabled, the fallback to direct markers happens.
- Fixes the closing of timeline service.
- Fixes tests that depend on markers, mainly by starting the timeline service for each test.
Sivabalan Narayanan [Fri, 26 Nov 2021 21:36:42 +0000 (16:36 -0500)]
[HUDI-2861] Re-use same rollback instant time for failed rollbacks (#4123)
Sivabalan Narayanan [Fri, 26 Nov 2021 18:50:10 +0000 (13:50 -0500)]
[MINOR] Fixing test failure to fix CI build failure (#4132)
Alexey Kudinkin [Fri, 26 Nov 2021 18:02:15 +0000 (10:02 -0800)]
[HUDI-2814] Addressing issues w/ Z-order Layout Optimization (#4060)
* `ZCurveOptimizeHelper` > `ZOrderingIndexHelper`;
Moved Z-index helper under `hudi.index.zorder` package
* Tidying up `ZOrderingIndexHelper`
* Fixing compilation
* Fixed index new/original table merging sequence to always prefer values from new index;
Cleaned up `HoodieSparkUtils`
* Added test for `mergeIndexSql`
* Abstracted Z-index name composition w/in `ZOrderingIndexHelper`;
* Fixed `DataSkippingUtils` to interrupt prunning in case data filter contains non-indexed column reference
* Properly handle exceptions origination during pruning in `HoodieFileIndex`
* Make sure no errors are logged upon encountering `AnalysisException`
* Cleaned up Z-index updating sequence;
Tidying up comments, java-docs;
* Fixed Z-index to properly handle changes of the list of clustered columns
* Tidying up
* `lint`
* Suppressing `JavaDocStyle` first sentence check
* Fixed compilation
* Fixing incorrect `DecimalType` conversion
* Refactored test `TestTableLayoutOptimization`
- Added Z-index table composition test (against fixtures)
- Separated out GC test;
Tidying up
* Fixed tests re-shuffling column order for Z-Index table `DataFrame` to align w/ the one by one loaded from JSON
* Scaffolded `DataTypeUtils` to do basic checks of Spark types;
Added proper compatibility checking b/w old/new index-tables
* Added test for Z-index tables merging
* Fixed import being shaded by creating internal `hudi.util` package
* Fixed packaging for `TestOptimizeTable`
* Revised `updateMetadataIndex` seq to provide Z-index updating process w/ source table schema
* Make sure existing Z-index table schema is sync'd to source table's one
* Fixed shaded refs
* Fixed tests
* Fixed type conversion of Parquet provided metadata values into Spark expected schemas
* Fixed `composeIndexSchema` utility to propose proper schema
* Added more tests for Z-index:
- Checking that Z-index table is built correctly
- Checking that Z-index tables are merged correctly (during update)
* Fixing source table
* Fixing tests to read from Parquet w/ proper schema
* Refactored `ParquetUtils` utility reading stats from Parquet footers
* Fixed incorrect handling of Decimals extracted from Parquet footers
* Worked around issues in javac failign to compile stream's collection
* Fixed handling of `Date` type
* Fixed handling of `DateType` to be parsed as `LocalDate`
* Updated fixture;
Make sure test loads Z-index fixture using proper schema
* Removed superfluous scheme adjusting when reading from Parquet, since Spark is actually able to perfectly restore schema (given Parquet was previously written by Spark as well)
* Fixing race-condition in Parquet's `DateStringifier` trying to share `SimpleDataFormat` object which is inherently not thread-safe
* Tidying up
* Make sure schema is used upon reading to validate input files are in the appropriate format;
Tidying up;
* Worked around javac (1.8) inability to infer expression type properly
* Updated fixtures;
Tidying up
* Fixing compilation after rebase
* Assert clustering have in Z-order layout optimization testing
* Tidying up exception messages
* XXX
* Added test validating Z-index lookup filter correctness
* Added more test-cases;
Tidying up
* Added tests for string expressions
* Fixed incorrect Z-index filter lookup translations
* Added more test-cases
* Added proper handling on complex negations of AND/OR expressions by pushing NOT operator down into inner expressions for appropriate handling
* Added `-target:jvm-1.8` for `hudi-spark` module
* Adding more tests
* Added tests for non-indexed columns
* Properly handle non-indexed columns by falling back to a re-write of containing expression as `TrueLiteral` instead
* Fixed tests
* Removing the parquet test files and disabling corresponding tests
Co-authored-by: Vinoth Chandar <vinoth@apache.org>
Manoj Govindassamy [Fri, 26 Nov 2021 12:17:23 +0000 (04:17 -0800)]
[HUDI-2850] Fixing Clustering CLI - schedule and run command fixes to avoid NumberFormatException (#4101)
Danny Chan [Fri, 26 Nov 2021 08:40:53 +0000 (16:40 +0800)]
[HUDI-2863] Rename option 'hoodie.parquet.page.size' to 'write.parquet.page.size' (#4128)
mincwang [Fri, 26 Nov 2021 08:24:03 +0000 (16:24 +0800)]
[HUDI-2852] Table metadata returns empty for non-exist partition (#4117)
* [HUDI-2852] Table metadata returns empty for non-exist partition
* add unit test
* fix code checkstyle
Co-authored-by: wangminchao <wangminchao@asinking.com>
Danny Chan [Fri, 26 Nov 2021 06:36:44 +0000 (14:36 +0800)]
[MINOR] Include hudi-aws in flink bundle jar (#4127)
HUDI-2801 makes this jar as required.
Ron [Fri, 26 Nov 2021 03:27:21 +0000 (11:27 +0800)]
[HUDI-2851] Shade org.apache.hadoop.hive.ql.optimizer package for flink bundle jar (#4104)
Sivabalan Narayanan [Thu, 25 Nov 2021 23:51:38 +0000 (18:51 -0500)]
[HUDI-2005] Removing direct fs call in HoodieLogFileReader (#3865)
Alexey Kudinkin [Thu, 25 Nov 2021 22:48:22 +0000 (14:48 -0800)]
[HUDI-2840] Fixed DeltaStreaemer to properly respect configuration passed t/h properties file (#4090)
* Rebased `DFSPropertiesConfiguration` to access Hadoop config in liue of FS to avoid confusion
* Fixed `readConfig` to take Hadoop's `Configuration` instead of FS;
Fixing usages
* Added test for local FS access
* Rebase to use `FSUtils.getFs`
* Combine properties provided as a file along w/ overrides provided from the CLI
* Added helper utilities to `HoodieClusteringConfig`;
Make sure corresponding config methods fallback to defaults;
* Fixed DeltaStreamer usage to respect properly combined configuration;
Abstracted `HoodieClusteringConfig.from` convenience utility to init Clustering config from `Properties`
* Tidying up
* `lint`
* Reverting changes to `HoodieWriteConfig`
* Tdiying up
* Fixed incorrect merge of the props
* Converted `HoodieConfig` to wrap around `Properties` into `TypedProperties`
* Fixed compilation
* Fixed compilation
Udit Mehrotra [Thu, 25 Nov 2021 21:33:16 +0000 (13:33 -0800)]
[HUDI-2801] Add Amazon CloudWatch metrics reporter (#4081)
Sivabalan Narayanan [Thu, 25 Nov 2021 21:06:04 +0000 (16:06 -0500)]
[HUDI-2841] Fixing lazy rollback for MOR with list based strategy (#4110)
Sivabalan Narayanan [Thu, 25 Nov 2021 19:34:07 +0000 (14:34 -0500)]
[HUDI-2858] Fixing handling of cluster update reject exception in deltastreamer (#4120)
Sivabalan Narayanan [Thu, 25 Nov 2021 19:21:32 +0000 (14:21 -0500)]
[HUDI-2671] Making error -> warn logs from timeline server with concurrent writers for inconsistent state (#4088)
* Making error -> warn logs from timeline server with concurrent writers for inconsistent state
* Fixing bad request response exception for timeline out of sync
* Addressing feedback. removed write concurrency mode depedency
Sivabalan Narayanan [Thu, 25 Nov 2021 19:19:30 +0000 (14:19 -0500)]
[HUDI-2794] Guarding table service commits within a single lock to commit to both data table and metadata table (#4037)
* Fixing a single lock to commit table services across metadata table and data table
* Addressing comments
* rebasing with master
Sagar Sumit [Thu, 25 Nov 2021 18:16:36 +0000 (23:46 +0530)]
[HUDI-2800] Remove rdd.isEmpty() validation to prevent CreateHandle being called twice (#4121)
satishm [Thu, 25 Nov 2021 16:26:59 +0000 (21:56 +0530)]
[HUDI-1290] fixing mysql debezium source (#4119)
Danny Chan [Thu, 25 Nov 2021 14:30:09 +0000 (22:30 +0800)]
[HUDI-2480] FileSlice after pending compaction-requested instant-time… (#3703)
* [HUDI-2480] FileSlice after pending compaction-requested instant-time is ignored by MOR snapshot reader
* include file slice after a pending compaction for spark reader
Co-authored-by: garyli1019 <yanjia.gary.li@gmail.com>
董可伦 [Thu, 25 Nov 2021 11:17:38 +0000 (19:17 +0800)]
[HUDI-2855] Change the default value of 'PAYLOAD_CLASS_NAME' to 'DefaultHoodieRecordPayload' (#4115)
Sivabalan Narayanan [Thu, 25 Nov 2021 02:56:31 +0000 (21:56 -0500)]
[HUDI-2792] Configure metadata payload consistency check (#4035)
- Relax metadata payload consistency check to consider spark task failures with spurious deletes
rmahindra123 [Thu, 25 Nov 2021 01:57:02 +0000 (17:57 -0800)]
[HUDI-1290] Add Debezium Source for deltastreamer (#4063)
* add source for postgres debezium
* Add tests for debezium payload
* Fix test
* Fix test
* Add tests for debezium source
* Add tests for debezium source
* Fix schema for debezium
* Fix checkstyle issues
* Fix config issue for schema registry
* Add mysql source for debezium
* Fix checkstyle issues an tests
* Improve code for merging toasted values
* Improve code for merging toasted values
Co-authored-by: Rajesh Mahindra <rmahindra@Rajeshs-MacBook-Pro.local>
rmahindra123 [Thu, 25 Nov 2021 01:31:34 +0000 (17:31 -0800)]
[HUDI-1290] [RFC-39] Deltastreamer avro source for Debezium CDC (#4048)
* Add RFC entry for deltastreamer source for debezium
* Add RFC for debezium source
* Add RFC for debezium source
* Add RFC for debezium source
* fix hyperlink issue and rebase
* Update progress
Co-authored-by: Rajesh Mahindra <rmahindra@Rajeshs-MacBook-Pro.local>
Y Ethan Guo [Thu, 25 Nov 2021 01:17:46 +0000 (17:17 -0800)]
[MINOR] Fix build failure due to checkstyle issues (#4111)
Alexey Kudinkin [Thu, 25 Nov 2021 00:53:29 +0000 (16:53 -0800)]
[HUDI-2844][CLI] Fixing archived Timeline crashing if timeline contains REPLACE_COMMIT (#4091)
rmahindra123 [Thu, 25 Nov 2021 00:03:01 +0000 (16:03 -0800)]
[HUDI-2853] Add JMX deps in hudi utilities and kafka connect bundles (#4108)
Co-authored-by: Rajesh Mahindra <rmahindra@Rajeshs-MacBook-Pro.local>
Sivabalan Narayanan [Wed, 24 Nov 2021 23:26:40 +0000 (18:26 -0500)]
[HUDI-2793] Fixing deltastreamer checkpoint fetch/copy over (#4034)
- Removed the copy over logic in transaction utils. Deltastreamer will go back to previous commits and get the checkpoint value.
Sagar Sumit [Wed, 24 Nov 2021 18:15:40 +0000 (23:45 +0530)]
[HUDI-2766] Cluster update strategy should not be fenced by write config (#4093)
Fix pending clustering rollback test
Alexey Kudinkin [Wed, 24 Nov 2021 18:10:28 +0000 (10:10 -0800)]
[HUDI-2788] Fixing issues w/ Z-order Layout Optimization (#4026)
* Simplyfying, tidying up
* Fixed packaging for `TestOptimizeTable`
* Cleaned up `HoodiFileIndex` file filtering seq;
Removed optimization manually reading Parquet table circumventing Spark
* Refactored `DataSkippingUtils`:
- Fixed checks to validate all statistics cols are present
- Fixed some predicates being constructed incorrectly
- Rewrote comments for easier comprehension, added more notes
- Tidying up
* Tidying up tests
* `lint`
* Fixing compilation
* `TestOptimizeTable` > `TestTableLayoutOptimization`;
Added assertions to test data skipping paths
* Fixed tests to properly hit data-skipping path
* Fixed pruned files candidates lookup seq to conservatively included all non-indexed files
* Added java-doc
* Fixed compilation
Manoj Govindassamy [Wed, 24 Nov 2021 18:05:36 +0000 (10:05 -0800)]
[HUDI-2443] Hudi KVComparator for all HFile writer usages (#3889)
* [HUDI-2443] Hudi KVComparator for all HFile writer usages
- Hudi relies on custom class shading for Hbase's KeyValue.KVComparator to
avoid versioning and class loading issues. There are few places which are
still using the Hbase's comparator class directly and version upgrades
would make them obsolete. Refactoring the HoodieKVComparator and making
all HFile writer creation using the same shaded class.
* [HUDI-2443] Hudi KVComparator for all HFile writer usages
- Moving HoodieKVComparator from common.bootstrap.index to common.util
* [HUDI-2443] Hudi KVComparator for all HFile writer usages
- Retaining the old HoodieKVComparatorV2 for boostrap case. Adding the
new comparator as HoodieKVComparatorV2 to differentiate from the old
one.
* [HUDI-2443] Hudi KVComparator for all HFile writer usages
- Renamed HoodieKVComparatorV2 to HoodieMetadataKVComparator and moved it
under the package org.apache.hudi.metadata.
* Make comparator classname configurable
* Revert new config and address other review comments
Co-authored-by: Sagar Sumit <sagarsumit09@gmail.com>
rmahindra123 [Wed, 24 Nov 2021 18:03:58 +0000 (10:03 -0800)]
[HUDI-2671] Fix kafka offset handling in Kafka Connect protocol (#4021)
Co-authored-by: Rajesh Mahindra <rmahindra@Rajeshs-MacBook-Pro.local>
Sagar Sumit [Wed, 24 Nov 2021 16:43:37 +0000 (22:13 +0530)]
[HUDI-2688] Claim the next rfc 40 for Hudi connector for Trino (#4105)
Yann Byron [Wed, 24 Nov 2021 10:12:38 +0000 (18:12 +0800)]
[HUDI-2759] extract HoodieCatalogTable to coordinate spark catalog table and hoodie table (#3998)
Danny Chan [Wed, 24 Nov 2021 09:34:42 +0000 (17:34 +0800)]
[HUDI-2847] Flink metadata table supports virtual keys (#4096)
Danny Chan [Wed, 24 Nov 2021 04:01:18 +0000 (12:01 +0800)]
Revert "[HUDI-2799] Fix the classloader of flink write task (#4042)" (#4069)
This reverts commit
8281cbf7624c3a4eb90bf58671daf76843d00819.
Yann Byron [Wed, 24 Nov 2021 03:46:48 +0000 (11:46 +0800)]
[HUDI-2838] refresh table after drop partition (#4084)
Raymond Xu [Wed, 24 Nov 2021 03:43:34 +0000 (19:43 -0800)]
[HUDI-2818] Fix 2to3 upgrade when set `hoodie.table.keygenerator.class` (#4077)
Alexey Kudinkin [Wed, 24 Nov 2021 01:25:11 +0000 (17:25 -0800)]
[HUDI-2831] Securing usages of `SimpleDateFormat` to be thread-safe (#4073)
rmahindra123 [Tue, 23 Nov 2021 23:48:06 +0000 (15:48 -0800)]
[HUDI-2325] Add hive sync support to kafka connect (#3660)
Co-authored-by: Rajesh Mahindra <rmahindra@Rajeshs-MacBook-Pro.local>
董可伦 [Tue, 23 Nov 2021 11:10:57 +0000 (19:10 +0800)]
[MINOR] Fix typo,rename 'HooodieAvroDeserializer' to 'HoodieAvroDeserializer' (#4064)
Y Ethan Guo [Tue, 23 Nov 2021 08:53:28 +0000 (00:53 -0800)]
[HUDI-2332] Add clustering and compaction in Kafka Connect Sink (#3857)
* [HUDI-2332] Add clustering and compaction in Kafka Connect Sink
* Disable validation check on instant time for compaction and adjust configs
* Add javadocs
* Add clustering and compaction config
* Fix transaction causing missing records in the target table
* Add debugging logs
* Fix kafka offset sync in participant
* Adjust how clustering and compaction are configured in kafka-connect
* Fix clustering strategy
* Remove irrelevant changes from other published PRs
* Update clustering logic and others
* Update README
* Fix test failures
* Fix indentation
* Fix clustering config
* Add JavaCustomColumnsSortPartitioner and make async compaction enabled by default
* Add test for JavaCustomColumnsSortPartitioner
* Add more changes after IDE sync
* Update README with clarification
* Fix clustering logic after rebasing
* Remove unrelated changes
zhangyue19921010 [Tue, 23 Nov 2021 05:55:12 +0000 (13:55 +0800)]
[HUDI-2409] Using HBase shaded jars in Hudi presto bundle (#3623)
* using hbase-shaded-jars-in-hudi-presto-hundle
* test
* add hudi-common-bundle
* code review
* code review
* code review
* code review
* test
* test
Co-authored-by: yuezhang <yuezhang@freewheel.tv>
xiarixiaoyao [Tue, 23 Nov 2021 05:46:02 +0000 (13:46 +0800)]
[HUDI-2778] Optimize statistics collection related codes and add some docs for z-order add fix some bugs (#4013)
* [HUDI-2778] Optimize statistics collection related codes and add more docs for z-order.
* add test code for multi-thread parquet footer read
Sagar Sumit [Tue, 23 Nov 2021 03:13:10 +0000 (08:43 +0530)]
[HUDI-2743] Assume path exists and defer fs.exists() in AbstractTableFileSystemView (#4002)
Y Ethan Guo [Tue, 23 Nov 2021 02:03:38 +0000 (18:03 -0800)]
[MINOR] Add more configuration to Kafka setup script (#3992)
* [MINOR] Add more configuration to Kafka setup script
* Add option to reuse Kafka topic
* Minor fixes to README
Sagar Sumit [Tue, 23 Nov 2021 01:59:03 +0000 (07:29 +0530)]
[HUDI-1937] Rollback unfinished replace commit to allow updates (#3869)
* [HUDI-1937] Rollback unfinished replace commit to allow updates while clustering
* Revert and delete requested replacecommit too
* Rollback pending clustering instants transactionally
* No double locking and add a config to enable rollback
* Update config to be clear about rollback only on conflict
Jimmy.Zhou [Tue, 23 Nov 2021 01:20:23 +0000 (09:20 +0800)]
[MINOR] Fix typo,'multipe' corrected to 'multiple' (#4068)
Y Ethan Guo [Tue, 23 Nov 2021 01:19:41 +0000 (17:19 -0800)]
[HUDI-2737] Use earliest instant by default for async compaction and clustering jobs (#3991)
Address review comments
Fix test failures
Co-authored-by: Sagar Sumit <sagarsumit09@gmail.com>
Alexey Kudinkin [Tue, 23 Nov 2021 00:19:59 +0000 (16:19 -0800)]
[HUDI-2550] Expand File-Group candidates list for appending for MOR tables (#3986)
Sagar Sumit [Mon, 22 Nov 2021 17:23:50 +0000 (22:53 +0530)]
[HUDI-2599] Make addFilesToview and fetchLatestBaseFiles public (#4066)
Sivabalan Narayanan [Mon, 22 Nov 2021 16:44:38 +0000 (11:44 -0500)]
[HUDI-2559] Converting commit timestamp format to millisecs (#4024)
- Adds support for generating commit timestamps with millisecs granularity.
- Older commit timestamps (in secs granularity) will be suffixed with 999 and parsed with millisecs format.
Sagar Sumit [Mon, 22 Nov 2021 13:57:44 +0000 (19:27 +0530)]
[MINOR] Fix instant parsing in HoodieClusteringJob (#4071)
Manoj Govindassamy [Mon, 22 Nov 2021 12:21:24 +0000 (04:21 -0800)]
[HUDI-2472] Enabling metadata table for TestHoodieIndex test case (#4045)
- Enablng the metadata table for testSimpleGlobalIndexTagLocationWhenShouldUpdatePartitionPath.
This is more of a test issue.
zhangyue19921010 [Mon, 22 Nov 2021 11:00:33 +0000 (19:00 +0800)]
[HUDI-2533] New option for hoodieClusteringJob to check, rollback and re-execute the last failed clustering job (#3765)
* coding finished and need to do uts
* add uts
* code review
* code review
Co-authored-by: yuezhang <yuezhang@freewheel.tv>
Raymond Xu [Mon, 22 Nov 2021 10:16:45 +0000 (02:16 -0800)]
[HUDI-1870] Add more Spark CI build tasks (#4022)
* [HUDI-1870] Add more Spark CI build tasks
- build for spark3.0.x
- build for spark-shade-unbundle-avro
- fix build failures
- delete unnecessary assertion for spark 3.0.x
- use AvroConversionUtils#convertAvroSchemaToStructType instead of calling SchemaConverters#toSqlType directly to solve the compilation failures with spark-shade-unbundle-avro (#5)
Co-authored-by: Yann <biyan900116@gmail.com>
Danny Chan [Mon, 22 Nov 2021 03:05:05 +0000 (11:05 +0800)]
[HUDI-2799] Fix the classloader of flink write task (#4042)
董可伦 [Sun, 21 Nov 2021 08:34:59 +0000 (16:34 +0800)]
[MINOR] Fix typos (#4053)
Nate Radtke [Sun, 21 Nov 2021 06:41:05 +0000 (00:41 -0600)]
[HUDI-1932] Update Hive sync timestamp when change detected (#3053)
* Update Hive sync timestamp when change detected
Only update the last commit timestamp on the Hive table when the table schema
has changed or a partition is created/updated.
When using AWS Glue Data Catalog as the metastore for Hive this will ensure
that table versions are substantive (including schema and/or partition
changes). Prior to this change when a Hive sync is performed without schema
or partition changes the table in the Glue Data Catalog would have a new
version published with the only change being the timestamp property.
https://issues.apache.org/jira/browse/HUDI-1932
* add conditional sync flag
* fix testSyncWithoutDiffs
* fix HiveSyncConfig
Co-authored-by: Raymond Xu <2701446+xushiyan@users.noreply.github.com>
Danny Chan [Sun, 21 Nov 2021 05:27:18 +0000 (13:27 +0800)]
[HUDI-2392] Make flink parquet reader compatible with decimal BINARY encoding (#4057)
Danny Chan [Sun, 21 Nov 2021 04:38:56 +0000 (12:38 +0800)]
[HUDI-2804] Add option to skip compaction instants for streaming read (#4051)
leesf [Sun, 21 Nov 2021 02:59:12 +0000 (10:59 +0800)]
[HUDI-2813] Claim RFC number for RFC for spark datasource V2 Integration (#4059)
dufeng1010 [Sun, 21 Nov 2021 02:11:01 +0000 (10:11 +0800)]
[MINOR] optimize in constructor of inputbatch class (#4040)
Co-authored-by: 闫杜峰 <yandufeng@sinochem.com>
rmahindra123 [Sun, 21 Nov 2021 01:28:48 +0000 (17:28 -0800)]
[MINOR] Claim RFC number for RFC for debezium source for deltastreamer (#4047)
vinoth chandar [Sat, 20 Nov 2021 16:07:40 +0000 (08:07 -0800)]
[HUDI-2795] Add mechanism to safely update,delete and recover table properties (#4038)
* [HUDI-2795] Add mechanism to safely update,delete and recover table properties
- Fail safe mechanism, that lets queries succeed off a backup file
- Readers who are not upgraded to this version of code will just fail until recovery is done.
- Added unit tests that exercises all these scenarios.
- Adding CLI for recovery, updation to table command.
- [Pending] Add some hash based verfication to ensure any rare partial writes for HDFS
* Fixing upgrade/downgrade infrastructure to use new updation method
Harsha Teja Kanna [Sat, 20 Nov 2021 09:24:21 +0000 (03:24 -0600)]
[HUDI-2742] Added S3 object filter to support multiple S3EventsHoodieIncrSources single S3 meta table (#4025)
Ron [Sat, 20 Nov 2021 03:55:12 +0000 (11:55 +0800)]
Remove the aws packages from hudi flink bundle jar (#4050)
wenningd [Sat, 20 Nov 2021 03:38:38 +0000 (19:38 -0800)]
[HUDI-2242] Add configuration inference logic for few options (#3359)
Co-authored-by: Wenning Ding <wenningd@amazon.com>
Manoj Govindassamy [Sat, 20 Nov 2021 01:02:57 +0000 (17:02 -0800)]
[HUDI-2796] Metadata table support for Restore action to first commit (#4039)
- Adding support for the metadata table to restore to first commit and
take proper action for the bootstrap on subequent commits.
Manoj Govindassamy [Sat, 20 Nov 2021 01:02:21 +0000 (17:02 -0800)]
[HUDI-2472] Enabling metadata table for TestHoodieMergeOnReadTable and TestHoodieCompactor (#4023)
Manoj Govindassamy [Fri, 19 Nov 2021 23:11:29 +0000 (15:11 -0800)]
[HUDI-2593] Virtual keys support for metadata table (#3968)
- Metadata table today has virtual keys disabled, thereby populating the metafields
for each record written out and increasing the overall storage space used. Hereby
adding virtual keys support for metadata table so that metafields are disabled
for metadata table records.
- Adding a custom KeyGenerator for Metadata table so as to not rely on the
default Base/SimpleKeyGenerators which currently look for record key
and partition field set in the table config.
- AbstractHoodieLogRecordReader's version of processing next data block and
createHoodieRecord() will be a generic version and making the derived class
HoodieMetadataMergedLogRecordReader take care of the special creation of
records from explictly passed in partition names.
Sagar Sumit [Fri, 19 Nov 2021 16:09:08 +0000 (21:39 +0530)]
[HUDI-2731] Make clustering work regardless of whether there are base… (#3970)
Danny Chan [Fri, 19 Nov 2021 15:39:37 +0000 (23:39 +0800)]
[HUDI-2798] Fix flink query operation fields (#4041)
Danny Chan [Fri, 19 Nov 2021 06:30:17 +0000 (14:30 +0800)]
[HUDI-2791] Allows duplicate files for metadata commit (#4033)
Udit Mehrotra [Thu, 18 Nov 2021 13:33:50 +0000 (05:33 -0800)]
[HUDI-2641] Avoid deleting all inflight commits heartbeats while rolling back failed writes (#3956)
wenningd [Thu, 18 Nov 2021 09:59:26 +0000 (01:59 -0800)]
[HUDI-2362] Add external config file support (#3416)
Co-authored-by: Wenning Ding <wenningd@amazon.com>
Danny Chan [Thu, 18 Nov 2021 08:40:48 +0000 (16:40 +0800)]
[HUDI-2790] Fix the changelog mode of HoodieTableSource (#4029)
Danny Chan [Thu, 18 Nov 2021 05:59:03 +0000 (13:59 +0800)]
[HUDI-2789] Flink batch upsert for non partitioned table does not work (#4028)
Sivabalan Narayanan [Wed, 17 Nov 2021 19:43:00 +0000 (14:43 -0500)]
[HUDI-2734] Setting default metadata enable as false for Java (#4003)
Manoj Govindassamy [Wed, 17 Nov 2021 18:59:38 +0000 (10:59 -0800)]
[HUDI-2716] InLineFS support for S3FS logs (#3977)
wenningd [Wed, 17 Nov 2021 17:09:31 +0000 (09:09 -0800)]
[HUDI-2314] Add support for DynamoDb based lock provider (#3486)
- Co-authored-by: Wenning Ding <wenningd@amazon.com>
- Co-authored-by: Sivabalan Narayanan <n.siva.b@gmail.com>
卢波 [Wed, 17 Nov 2021 14:47:52 +0000 (22:47 +0800)]
[MINOR] Add the Schema for GooseFS to StorageSchemes (#3982)
Co-authored-by: lubo <bollu@tencent.com>
董可伦 [Wed, 17 Nov 2021 08:50:04 +0000 (16:50 +0800)]
[MINOR] Fix typo,'Hooide' corrected to 'Hoodie' (#4007)
0x574C [Wed, 17 Nov 2021 06:45:43 +0000 (14:45 +0800)]
Check --source-avro-schema-path parameter (#3987)
Co-authored-by: 0x3E6 <dragon1996>
Sivabalan Narayanan [Wed, 17 Nov 2021 06:21:28 +0000 (01:21 -0500)]
[HUDI-2151] Part3 Enabling marker based rollback as default rollback strategy (#3950)
* Enabling timeline server based markers
* Enabling timeline server based markers and marker based rollback
* Removing constraint that timeline server can be enabled only for hdfs
* Fixing tests
Sivabalan Narayanan [Wed, 17 Nov 2021 04:36:55 +0000 (23:36 -0500)]
[HUDI-2753] Ensure list based rollback strategy is used for restore (#3983)
Alexey Kudinkin [Wed, 17 Nov 2021 02:30:16 +0000 (18:30 -0800)]
[MINOR] Fixed checkstyle config to be based off Maven root-dir (requires Maven >=3.3.1 to work properly); (#4009)
Updated README
Danny Chan [Tue, 16 Nov 2021 05:46:34 +0000 (13:46 +0800)]
[HUDI-2769] Fix StreamerUtil#medianInstantTime for very near instant time (#4005)
Sivabalan Narayanan [Tue, 16 Nov 2021 03:36:03 +0000 (22:36 -0500)]
[HUDI-2712] Fixing a bug with rollback of partially failed commit which has new partitions (#3947)
zhangyue19921010 [Mon, 15 Nov 2021 14:36:54 +0000 (22:36 +0800)]
[HUDI-2683] Parallelize deleting archived hoodie commits (#3920)
Co-authored-by: yuezhang <yuezhang@freewheel.tv>
Sivabalan Narayanan [Mon, 15 Nov 2021 12:27:35 +0000 (07:27 -0500)]
[HUDI-2744] Fix parsing of metadadata table compaction timestamp when metrics are enabled (#3976)
dufeng1010 [Mon, 15 Nov 2021 06:39:43 +0000 (14:39 +0800)]
[MINOR] Fix typo in IntervalTreeBasedGlobalIndexFileFilter (#3993)
Co-authored-by: 闫杜峰 <yandufeng@sinochem.com>