diff --git a/presto-main/src/main/java/com/facebook/presto/SystemSessionProperties.java b/presto-main/src/main/java/com/facebook/presto/SystemSessionProperties.java index a2a688ed4b2c5..6dc135b238207 100644 --- a/presto-main/src/main/java/com/facebook/presto/SystemSessionProperties.java +++ b/presto-main/src/main/java/com/facebook/presto/SystemSessionProperties.java @@ -359,6 +359,7 @@ public final class SystemSessionProperties public static final String NATIVE_MAX_PARTIAL_AGGREGATION_MEMORY = "native_max_partial_aggregation_memory"; public static final String NATIVE_MAX_EXTENDED_PARTIAL_AGGREGATION_MEMORY = "native_max_extended_partial_aggregation_memory"; + public static final String NATIVE_TASK_BUCKETED_WRITER_COUNT = "native_task_bucketed_writer_count"; public static final String NATIVE_MAX_SPILL_BYTES = "native_max_spill_bytes"; public static final String DEFAULT_VIEW_SECURITY_MODE = "default_view_security_mode"; public static final String JOIN_PREFILTER_BUILD_SIDE = "join_prefilter_build_side"; @@ -1768,6 +1769,11 @@ public SystemSessionProperties( "The max partial aggregation memory when data reduction is optimal.", 1L << 26, false), + integerProperty( + NATIVE_TASK_BUCKETED_WRITER_COUNT, + "Number of writers per task for bucketed writes.", + 7, + false), longProperty( NATIVE_MAX_SPILL_BYTES, "The max allowed spill bytes", diff --git a/presto-native-execution/presto_cpp/main/SessionProperties.cpp b/presto-native-execution/presto_cpp/main/SessionProperties.cpp index 338d17766e722..6a47e00dedb7e 100644 --- a/presto-native-execution/presto_cpp/main/SessionProperties.cpp +++ b/presto-native-execution/presto_cpp/main/SessionProperties.cpp @@ -244,6 +244,14 @@ SessionProperties::SessionProperties() { QueryConfig::kDebugDisableExpressionWithLazyInputs, boolToString(c.debugDisableExpressionsWithLazyInputs())); + addSessionProperty( + kNativeTaskBucketedWriterCount, + "Number of writers per task for bucketed writes.", + INTEGER(), + false, + QueryConfig::kTaskBucketedWriterCount, + std::to_string(c.taskBucketedWriterCount())); + addSessionProperty( kSelectiveNimbleReaderEnabled, "Temporary flag to control whether selective Nimble reader should be " diff --git a/presto-native-execution/presto_cpp/main/SessionProperties.h b/presto-native-execution/presto_cpp/main/SessionProperties.h index 50f9869267e62..0b1366f58907c 100644 --- a/presto-native-execution/presto_cpp/main/SessionProperties.h +++ b/presto-native-execution/presto_cpp/main/SessionProperties.h @@ -171,6 +171,9 @@ class SessionProperties { static constexpr const char* kSelectiveNimbleReaderEnabled = "native_selective_nimble_reader_enabled"; + static constexpr const char* kNativeTaskBucketedWriterCount = + "native_task_bucketed_writer_count"; + /// Enable timezone-less timestamp conversions. static constexpr const char* kLegacyTimestamp = "legacy_timestamp";