This is an automated email from the ASF dual-hosted git repository. codope pushed a commit to branch release-0.12.0 in repository https://gitbox.apache.org/repos/asf/hudi.git
commit ea90f1ecd738668d59423e1aed36bb430a00c549 Author: KnightChess <[email protected]> AuthorDate: Thu Aug 4 06:56:51 2022 +0800 [HUDI-4447] fix no partitioned path extractor error when sync meta (#6263) --- .../src/main/java/org/apache/hudi/sync/common/HoodieSyncConfig.java | 2 +- .../test/java/org/apache/hudi/sync/common/TestHoodieSyncConfig.java | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/HoodieSyncConfig.java b/hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/HoodieSyncConfig.java index 093ecdfefd..d38cbc9524 100644 --- a/hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/HoodieSyncConfig.java +++ b/hudi-sync/hudi-sync-common/src/main/java/org/apache/hudi/sync/common/HoodieSyncConfig.java @@ -86,7 +86,7 @@ public class HoodieSyncConfig extends HoodieConfig { .key("hoodie.datasource.hive_sync.partition_extractor_class") .defaultValue("org.apache.hudi.hive.SlashEncodedDayPartitionValueExtractor") .withInferFunction(cfg -> { - if (cfg.contains(KeyGeneratorOptions.PARTITIONPATH_FIELD_NAME)) { + if (StringUtils.nonEmpty(cfg.getString(KeyGeneratorOptions.PARTITIONPATH_FIELD_NAME))) { int numOfPartFields = cfg.getString(KeyGeneratorOptions.PARTITIONPATH_FIELD_NAME).split(",").length; if (numOfPartFields == 1 && cfg.contains(KeyGeneratorOptions.HIVE_STYLE_PARTITIONING_ENABLE) diff --git a/hudi-sync/hudi-sync-common/src/test/java/org/apache/hudi/sync/common/TestHoodieSyncConfig.java b/hudi-sync/hudi-sync-common/src/test/java/org/apache/hudi/sync/common/TestHoodieSyncConfig.java index eb9d44b9ef..ddf07b836e 100644 --- a/hudi-sync/hudi-sync-common/src/test/java/org/apache/hudi/sync/common/TestHoodieSyncConfig.java +++ b/hudi-sync/hudi-sync-common/src/test/java/org/apache/hudi/sync/common/TestHoodieSyncConfig.java @@ -100,6 +100,12 @@ class TestHoodieSyncConfig { HoodieSyncConfig config3 = new HoodieSyncConfig(new Properties(), new Configuration()); assertEquals("org.apache.hudi.hive.NonPartitionedExtractor", config3.getStringOrDefault(META_SYNC_PARTITION_EXTRACTOR_CLASS)); + + Properties props4 = new Properties(); + props4.setProperty(KeyGeneratorOptions.PARTITIONPATH_FIELD_NAME.key(), ""); + HoodieSyncConfig config4 = new HoodieSyncConfig(props4, new Configuration()); + assertEquals("org.apache.hudi.hive.NonPartitionedExtractor", + config4.getStringOrDefault(META_SYNC_PARTITION_EXTRACTOR_CLASS)); } @Test
