From d4dd66eca8a7cd82801fd4c146e800d22e33d4b2 Mon Sep 17 00:00:00 2001 From: Sagar Sumit Date: Mon, 6 Jun 2022 12:40:06 +0530 Subject: [PATCH] [HUDI-4195] Bulk insert should use right keygen for non-partitioned table --- .../java/org/apache/hudi/HoodieDatasetBulkInsertHelper.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hudi-spark-datasource/hudi-spark-common/src/main/java/org/apache/hudi/HoodieDatasetBulkInsertHelper.java b/hudi-spark-datasource/hudi-spark-common/src/main/java/org/apache/hudi/HoodieDatasetBulkInsertHelper.java index 0ed7b23c7471a..bc1172f387f0c 100644 --- a/hudi-spark-datasource/hudi-spark-common/src/main/java/org/apache/hudi/HoodieDatasetBulkInsertHelper.java +++ b/hudi-spark-datasource/hudi-spark-common/src/main/java/org/apache/hudi/HoodieDatasetBulkInsertHelper.java @@ -22,9 +22,9 @@ import org.apache.hudi.common.model.HoodieRecord; import org.apache.hudi.common.util.ReflectionUtils; import org.apache.hudi.config.HoodieWriteConfig; -import org.apache.hudi.hive.NonPartitionedExtractor; import org.apache.hudi.keygen.BuiltinKeyGenerator; import org.apache.hudi.keygen.ComplexKeyGenerator; +import org.apache.hudi.keygen.NonpartitionedKeyGenerator; import org.apache.hudi.keygen.SimpleKeyGenerator; import org.apache.hudi.keygen.constant.KeyGeneratorOptions; import org.apache.hudi.table.BulkInsertPartitioner; @@ -87,7 +87,7 @@ public static Dataset prepareHoodieDatasetForBulkInsert(SQLContext sqlConte BuiltinKeyGenerator keyGenerator = (BuiltinKeyGenerator) ReflectionUtils.loadClass(keyGeneratorClass, properties); Dataset rowDatasetWithRecordKeysAndPartitionPath; - if (keyGeneratorClass.equals(NonPartitionedExtractor.class.getName())) { + if (keyGeneratorClass.equals(NonpartitionedKeyGenerator.class.getName())) { // for non partitioned, set partition path to empty. rowDatasetWithRecordKeysAndPartitionPath = rows.withColumn(HoodieRecord.RECORD_KEY_METADATA_FIELD, functions.col(recordKeyFields)) .withColumn(HoodieRecord.PARTITION_PATH_METADATA_FIELD, functions.lit("").cast(DataTypes.StringType));