diff --git a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/config/HoodieWriteConfig.java b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/config/HoodieWriteConfig.java index 6bb57da87a74d..02d7a66ca8b0a 100644 --- a/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/config/HoodieWriteConfig.java +++ b/hudi-client/hudi-client-common/src/main/java/org/apache/hudi/config/HoodieWriteConfig.java @@ -65,6 +65,8 @@ import java.util.function.Supplier; import java.util.stream.Collectors; +import static org.apache.hudi.common.table.timeline.versioning.TimelineLayoutVersion.VERSION_1; + /** * Class storing configs for the HoodieWriteClient. */ @@ -108,13 +110,13 @@ public class HoodieWriteConfig extends HoodieConfig { public static final ConfigProperty ROLLBACK_USING_MARKERS = ConfigProperty .key("hoodie.rollback.using.markers") - .defaultValue("false") + .defaultValue("true") .withDocumentation("Enables a more efficient mechanism for rollbacks based on the marker files generated " + "during the writes. Turned off by default."); public static final ConfigProperty TIMELINE_LAYOUT_VERSION = ConfigProperty .key("hoodie.timeline.layout.version") - .noDefaultValue() + .defaultValue(String.valueOf(VERSION_1)) .sinceVersion("0.5.1") .withDocumentation("Controls the layout of the timeline. Version 0 relied on renames, Version 1 (default) models " + "the timeline as an immutable log relying only on atomic writes for object storage."); diff --git a/hudi-common/src/main/java/org/apache/hudi/common/config/HoodieMetadataConfig.java b/hudi-common/src/main/java/org/apache/hudi/common/config/HoodieMetadataConfig.java index 11a75b6c4dfab..cec7db9f607a8 100644 --- a/hudi-common/src/main/java/org/apache/hudi/common/config/HoodieMetadataConfig.java +++ b/hudi-common/src/main/java/org/apache/hudi/common/config/HoodieMetadataConfig.java @@ -40,7 +40,7 @@ public final class HoodieMetadataConfig extends HoodieConfig { // Enable the internal Metadata Table which saves file listings public static final ConfigProperty METADATA_ENABLE_PROP = ConfigProperty .key(METADATA_PREFIX + ".enable") - .defaultValue(false) + .defaultValue(true) .sinceVersion("0.7.0") .withDocumentation("Enable the internal metadata table which serves table metadata like level file listings"); diff --git a/hudi-common/src/main/java/org/apache/hudi/common/fs/ConsistencyGuardConfig.java b/hudi-common/src/main/java/org/apache/hudi/common/fs/ConsistencyGuardConfig.java index 9b12f89c77ccc..74830a4b2a272 100644 --- a/hudi-common/src/main/java/org/apache/hudi/common/fs/ConsistencyGuardConfig.java +++ b/hudi-common/src/main/java/org/apache/hudi/common/fs/ConsistencyGuardConfig.java @@ -77,7 +77,7 @@ public class ConsistencyGuardConfig extends HoodieConfig { // config to enable OptimisticConsistencyGuard in finalizeWrite instead of FailSafeConsistencyGuard public static final ConfigProperty ENABLE_OPTIMISTIC_CONSISTENCY_GUARD_PROP = ConfigProperty .key("_hoodie.optimistic.consistency.guard.enable") - .defaultValue(true) + .defaultValue(false) .sinceVersion("0.6.0") .withDocumentation("Enable consistency guard, which optimistically assumes consistency is achieved after a certain time period."); diff --git a/hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/DataSourceOptions.scala b/hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/DataSourceOptions.scala index 710db943bf6d3..e620d581084df 100644 --- a/hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/DataSourceOptions.scala +++ b/hudi-spark-datasource/hudi-spark-common/src/main/scala/org/apache/hudi/DataSourceOptions.scala @@ -244,7 +244,7 @@ object DataSourceWriteOptions { */ val ENABLE_ROW_WRITER_OPT_KEY: ConfigProperty[String] = ConfigProperty .key("hoodie.datasource.write.row.writer.enable") - .defaultValue("false") + .defaultValue("true") .withDocumentation("When set to true, will perform write operations directly using the spark native " + "`Row` representation, avoiding any additional conversion costs.")