Restore 0.8.0 config keys with deprecated annotation (#3506)
Co-authored-by: Sagar Sumit <sagarsumit09@gmail.com> Co-authored-by: Vinoth Chandar <vinoth@apache.org>
This commit is contained in:
@@ -207,7 +207,7 @@ public class FlinkOptions extends HoodieConfig {
|
||||
// Write Options
|
||||
// ------------------------------------------------------------------------
|
||||
public static final ConfigOption<String> TABLE_NAME = ConfigOptions
|
||||
.key(HoodieWriteConfig.TABLE_NAME.key())
|
||||
.key(HoodieWriteConfig.TBL_NAME.key())
|
||||
.stringType()
|
||||
.noDefaultValue()
|
||||
.withDescription("Table name to register to Hive metastore");
|
||||
@@ -240,7 +240,7 @@ public class FlinkOptions extends HoodieConfig {
|
||||
+ "key value, we will pick the one with the largest value for the precombine field,\n"
|
||||
+ "determined by Object.compareTo(..)");
|
||||
|
||||
public static final ConfigOption<String> PAYLOAD_CLASS = ConfigOptions
|
||||
public static final ConfigOption<String> PAYLOAD_CLASS_NAME = ConfigOptions
|
||||
.key("write.payload.class")
|
||||
.stringType()
|
||||
.defaultValue(OverwriteWithLatestAvroPayload.class.getName())
|
||||
@@ -308,8 +308,8 @@ public class FlinkOptions extends HoodieConfig {
|
||||
+ "If set true, the names of partition folders follow <partition_column_name>=<partition_value> format.\n"
|
||||
+ "By default false (the names of partition folders are only partition values)");
|
||||
|
||||
public static final ConfigOption<String> KEYGEN_CLASS = ConfigOptions
|
||||
.key(HoodieWriteConfig.KEYGENERATOR_CLASS.key())
|
||||
public static final ConfigOption<String> KEYGEN_CLASS_NAME = ConfigOptions
|
||||
.key(HoodieWriteConfig.KEYGENERATOR_CLASS_NAME.key())
|
||||
.stringType()
|
||||
.defaultValue("")
|
||||
.withDescription("Key generator class, that implements will extract the key out of incoming record");
|
||||
@@ -549,7 +549,7 @@ public class FlinkOptions extends HoodieConfig {
|
||||
.defaultValue("")
|
||||
.withDescription("Partition fields for hive sync, default ''");
|
||||
|
||||
public static final ConfigOption<String> HIVE_SYNC_PARTITION_EXTRACTOR_CLASS = ConfigOptions
|
||||
public static final ConfigOption<String> HIVE_SYNC_PARTITION_EXTRACTOR_CLASS_NAME = ConfigOptions
|
||||
.key("hive_sync.partition_extractor_class")
|
||||
.stringType()
|
||||
.defaultValue(SlashEncodedDayPartitionValueExtractor.class.getCanonicalName())
|
||||
|
||||
@@ -81,7 +81,7 @@ public class WriteProfile {
|
||||
|
||||
/**
|
||||
* Total records to write for each bucket based on
|
||||
* the config option {@link org.apache.hudi.config.HoodieStorageConfig#PARQUET_FILE_MAX_BYTES}.
|
||||
* the config option {@link org.apache.hudi.config.HoodieStorageConfig#PARQUET_MAX_FILE_SIZE}.
|
||||
*/
|
||||
private long recordsPerBucket;
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ public class HiveSyncContext {
|
||||
hiveSyncConfig.hivePass = conf.getString(FlinkOptions.HIVE_SYNC_PASSWORD);
|
||||
hiveSyncConfig.jdbcUrl = conf.getString(FlinkOptions.HIVE_SYNC_JDBC_URL);
|
||||
hiveSyncConfig.partitionFields = Arrays.asList(FilePathUtils.extractPartitionKeys(conf));
|
||||
hiveSyncConfig.partitionValueExtractorClass = conf.getString(FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS);
|
||||
hiveSyncConfig.partitionValueExtractorClass = conf.getString(FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS_NAME);
|
||||
hiveSyncConfig.useJdbc = conf.getBoolean(FlinkOptions.HIVE_SYNC_USE_JDBC);
|
||||
hiveSyncConfig.useFileListingFromMetadata = conf.getBoolean(FlinkOptions.METADATA_ENABLED);
|
||||
hiveSyncConfig.verifyMetadataFileListing = false;
|
||||
|
||||
@@ -66,7 +66,7 @@ public class PayloadCreation implements Serializable {
|
||||
} else {
|
||||
argTypes = new Class<?>[] {Option.class};
|
||||
}
|
||||
final String clazz = conf.getString(FlinkOptions.PAYLOAD_CLASS);
|
||||
final String clazz = conf.getString(FlinkOptions.PAYLOAD_CLASS_NAME);
|
||||
constructor = ReflectionUtils.getClass(clazz).getConstructor(argTypes);
|
||||
return new PayloadCreation(shouldCombine, constructor, preCombineField);
|
||||
}
|
||||
|
||||
@@ -311,7 +311,7 @@ public class FlinkStreamerConfig extends Configuration {
|
||||
conf.setBoolean(FlinkOptions.INSERT_DEDUP, config.insertDedup);
|
||||
conf.setString(FlinkOptions.OPERATION, config.operation.value());
|
||||
conf.setString(FlinkOptions.PRECOMBINE_FIELD, config.sourceOrderingField);
|
||||
conf.setString(FlinkOptions.PAYLOAD_CLASS, config.payloadClassName);
|
||||
conf.setString(FlinkOptions.PAYLOAD_CLASS_NAME, config.payloadClassName);
|
||||
conf.setBoolean(FlinkOptions.INSERT_DROP_DUPS, config.filterDupes);
|
||||
conf.setInteger(FlinkOptions.RETRY_TIMES, Integer.parseInt(config.instantRetryTimes));
|
||||
conf.setLong(FlinkOptions.RETRY_INTERVAL_MS, Long.parseLong(config.instantRetryInterval));
|
||||
@@ -319,7 +319,7 @@ public class FlinkStreamerConfig extends Configuration {
|
||||
conf.setString(FlinkOptions.RECORD_KEY_FIELD, config.recordKeyField);
|
||||
conf.setString(FlinkOptions.PARTITION_PATH_FIELD, config.partitionPathField);
|
||||
if (!StringUtils.isNullOrEmpty(config.keygenClass)) {
|
||||
conf.setString(FlinkOptions.KEYGEN_CLASS, config.keygenClass);
|
||||
conf.setString(FlinkOptions.KEYGEN_CLASS_NAME, config.keygenClass);
|
||||
} else {
|
||||
conf.setString(FlinkOptions.KEYGEN_TYPE, config.keygenType);
|
||||
}
|
||||
@@ -362,7 +362,7 @@ public class FlinkStreamerConfig extends Configuration {
|
||||
conf.setString(FlinkOptions.HIVE_SYNC_JDBC_URL, config.hiveSyncJdbcUrl);
|
||||
conf.setString(FlinkOptions.HIVE_SYNC_METASTORE_URIS, config.hiveSyncMetastoreUri);
|
||||
conf.setString(FlinkOptions.HIVE_SYNC_PARTITION_FIELDS, config.hiveSyncPartitionFields);
|
||||
conf.setString(FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS, config.hiveSyncPartitionExtractorClass);
|
||||
conf.setString(FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS_NAME, config.hiveSyncPartitionExtractorClass);
|
||||
conf.setBoolean(FlinkOptions.HIVE_SYNC_ASSUME_DATE_PARTITION, config.hiveSyncAssumeDatePartition);
|
||||
conf.setBoolean(FlinkOptions.HIVE_SYNC_USE_JDBC, config.hiveSyncUseJdbc);
|
||||
conf.setBoolean(FlinkOptions.HIVE_SYNC_AUTO_CREATE_DB, config.hiveSyncAutoCreateDb);
|
||||
|
||||
@@ -174,17 +174,17 @@ public class HoodieTableFactory implements DynamicTableSourceFactory, DynamicTab
|
||||
// tweak the key gen class if possible
|
||||
final String[] partitions = conf.getString(FlinkOptions.PARTITION_PATH_FIELD).split(",");
|
||||
if (partitions.length == 1 && partitions[0].equals("")) {
|
||||
conf.setString(FlinkOptions.KEYGEN_CLASS, NonpartitionedAvroKeyGenerator.class.getName());
|
||||
conf.setString(FlinkOptions.KEYGEN_CLASS_NAME, NonpartitionedAvroKeyGenerator.class.getName());
|
||||
LOG.info("Table option [{}] is reset to {} because this is a non-partitioned table",
|
||||
FlinkOptions.KEYGEN_CLASS.key(), NonpartitionedAvroKeyGenerator.class.getName());
|
||||
FlinkOptions.KEYGEN_CLASS_NAME.key(), NonpartitionedAvroKeyGenerator.class.getName());
|
||||
return;
|
||||
}
|
||||
final String[] pks = conf.getString(FlinkOptions.RECORD_KEY_FIELD).split(",");
|
||||
boolean complexHoodieKey = pks.length > 1 || partitions.length > 1;
|
||||
if (complexHoodieKey && FlinkOptions.isDefaultValueDefined(conf, FlinkOptions.KEYGEN_CLASS)) {
|
||||
conf.setString(FlinkOptions.KEYGEN_CLASS, ComplexAvroKeyGenerator.class.getName());
|
||||
if (complexHoodieKey && FlinkOptions.isDefaultValueDefined(conf, FlinkOptions.KEYGEN_CLASS_NAME)) {
|
||||
conf.setString(FlinkOptions.KEYGEN_CLASS_NAME, ComplexAvroKeyGenerator.class.getName());
|
||||
LOG.info("Table option [{}] is reset to {} because record key or partition path has two or more fields",
|
||||
FlinkOptions.KEYGEN_CLASS.key(), ComplexAvroKeyGenerator.class.getName());
|
||||
FlinkOptions.KEYGEN_CLASS_NAME.key(), ComplexAvroKeyGenerator.class.getName());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -220,8 +220,8 @@ public class HoodieTableFactory implements DynamicTableSourceFactory, DynamicTab
|
||||
* */
|
||||
private static void setupHiveOptions(Configuration conf) {
|
||||
if (!conf.getBoolean(FlinkOptions.HIVE_STYLE_PARTITIONING)
|
||||
&& FlinkOptions.isDefaultValueDefined(conf, FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS)) {
|
||||
conf.setString(FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS, MultiPartKeysValueExtractor.class.getName());
|
||||
&& FlinkOptions.isDefaultValueDefined(conf, FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS_NAME)) {
|
||||
conf.setString(FlinkOptions.HIVE_SYNC_PARTITION_EXTRACTOR_CLASS_NAME, MultiPartKeysValueExtractor.class.getName());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ import java.util.Properties;
|
||||
import static org.apache.hudi.common.model.HoodieFileFormat.HOODIE_LOG;
|
||||
import static org.apache.hudi.common.model.HoodieFileFormat.ORC;
|
||||
import static org.apache.hudi.common.model.HoodieFileFormat.PARQUET;
|
||||
import static org.apache.hudi.common.table.HoodieTableConfig.HOODIE_ARCHIVELOG_FOLDER_PROP;
|
||||
import static org.apache.hudi.common.table.HoodieTableConfig.ARCHIVELOG_FOLDER;
|
||||
|
||||
/**
|
||||
* Utilities for Flink stream read and write.
|
||||
@@ -157,7 +157,7 @@ public class StreamerUtil {
|
||||
.withMergeAllowDuplicateOnInserts(allowDuplicateInserts(conf))
|
||||
.withCompactionConfig(
|
||||
HoodieCompactionConfig.newBuilder()
|
||||
.withPayloadClass(conf.getString(FlinkOptions.PAYLOAD_CLASS))
|
||||
.withPayloadClass(conf.getString(FlinkOptions.PAYLOAD_CLASS_NAME))
|
||||
.withTargetIOPerCompactionInMB(conf.getLong(FlinkOptions.COMPACTION_TARGET_IO))
|
||||
.withInlineCompactionTriggerStrategy(
|
||||
CompactionTriggerStrategy.valueOf(conf.getString(FlinkOptions.COMPACTION_TRIGGER_STRATEGY).toUpperCase(Locale.ROOT)))
|
||||
@@ -236,8 +236,8 @@ public class StreamerUtil {
|
||||
.setTableType(conf.getString(FlinkOptions.TABLE_TYPE))
|
||||
.setTableName(conf.getString(FlinkOptions.TABLE_NAME))
|
||||
.setRecordKeyFields(conf.getString(FlinkOptions.RECORD_KEY_FIELD, null))
|
||||
.setPayloadClassName(conf.getString(FlinkOptions.PAYLOAD_CLASS))
|
||||
.setArchiveLogFolder(HOODIE_ARCHIVELOG_FOLDER_PROP.defaultValue())
|
||||
.setPayloadClassName(conf.getString(FlinkOptions.PAYLOAD_CLASS_NAME))
|
||||
.setArchiveLogFolder(ARCHIVELOG_FOLDER.defaultValue())
|
||||
.setPartitionFields(conf.getString(FlinkOptions.PARTITION_PATH_FIELD, null))
|
||||
.setPreCombineField(conf.getString(FlinkOptions.PRECOMBINE_FIELD))
|
||||
.setTimelineLayoutVersion(1)
|
||||
|
||||
Reference in New Issue
Block a user