Skip to content

Commit dbc36d3

Browse files
committed
Add native index join perf related session properties
1 parent 686d1c5 commit dbc36d3

File tree

1 file changed

+28
-4
lines changed

1 file changed

+28
-4
lines changed

presto-main-base/src/main/java/com/facebook/presto/sessionpropertyproviders/NativeWorkerSessionPropertyProvider.java

Lines changed: 28 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import static com.facebook.presto.spi.session.PropertyMetadata.stringProperty;
2929
import static java.util.Objects.requireNonNull;
3030

31-
@Deprecated
3231
public class NativeWorkerSessionPropertyProvider
3332
implements WorkerSessionPropertyProvider
3433
{
@@ -81,6 +80,10 @@ public class NativeWorkerSessionPropertyProvider
8180
public static final String NATIVE_REQUEST_DATA_SIZES_MAX_WAIT_SEC = "native_request_data_sizes_max_wait_sec";
8281
public static final String NATIVE_QUERY_MEMORY_RECLAIMER_PRIORITY = "native_query_memory_reclaimer_priority";
8382
public static final String NATIVE_MAX_NUM_SPLITS_LISTENED_TO = "native_max_num_splits_listened_to";
83+
public static final String NATIVE_INDEX_LOOKUP_JOIN_MAX_PREFETCH_BATCHES = "native_index_lookup_join_max_prefetch_batches";
84+
public static final String NATIVE_INDEX_LOOKUP_JOIN_SPLIT_OUTPUT = "native_index_lookup_join_split_output";
85+
public static final String NATIVE_UNNEST_SPLIT_OUTPUT = "native_unnest_split_output";
86+
8487
private final List<PropertyMetadata<?>> sessionProperties;
8588

8689
@Inject
@@ -152,7 +155,7 @@ public NativeWorkerSessionPropertyProvider(FeaturesConfig featuresConfig)
152155
longProperty(
153156
NATIVE_WRITER_FLUSH_THRESHOLD_BYTES,
154157
"Native Execution only. Minimum memory footprint size required to reclaim memory from a file " +
155-
"writer by flushing its buffered data to disk.",
158+
"writer by flushing its buffered data to disk.",
156159
96L << 20,
157160
false),
158161
booleanProperty(
@@ -266,7 +269,7 @@ public NativeWorkerSessionPropertyProvider(FeaturesConfig featuresConfig)
266269
"",
267270
!nativeExecution),
268271
stringProperty(NATIVE_QUERY_TRACE_FRAGMENT_ID,
269-
"The fragment id of the traced task.",
272+
"The fragment id of the traced task.",
270273
"",
271274
!nativeExecution),
272275
stringProperty(NATIVE_QUERY_TRACE_SHARD_ID,
@@ -366,13 +369,34 @@ public NativeWorkerSessionPropertyProvider(FeaturesConfig featuresConfig)
366369
integerProperty(
367370
NATIVE_QUERY_MEMORY_RECLAIMER_PRIORITY,
368371
"Native Execution only. Priority of memory recliamer when deciding on memory pool to abort." +
369-
"Lower value has higher priority and less likely to be choosen for memory pool abort",
372+
"Lower value has higher priority and less likely to be choosen for memory pool abort",
370373
2147483647,
371374
!nativeExecution),
372375
integerProperty(
373376
NATIVE_MAX_NUM_SPLITS_LISTENED_TO,
374377
"Maximum number of splits to listen to per table scan node per worker.",
375378
0,
379+
!nativeExecution),
380+
381+
integerProperty(
382+
NATIVE_INDEX_LOOKUP_JOIN_MAX_PREFETCH_BATCHES,
383+
"Specifies the max number of input batches to prefetch to do index lookup ahead. " +
384+
"If it is zero, then process one input batch at a time.",
385+
0,
386+
!nativeExecution),
387+
booleanProperty(
388+
NATIVE_INDEX_LOOKUP_JOIN_SPLIT_OUTPUT,
389+
"If this is true, then the index join operator might split output for each input " +
390+
"batch based on the output batch size control. Otherwise, it tries to produce a " +
391+
"single output for each input batch.",
392+
true,
393+
!nativeExecution),
394+
booleanProperty(
395+
NATIVE_UNNEST_SPLIT_OUTPUT,
396+
"If this is true, then the unnest operator might split output for each input " +
397+
"batch based on the output batch size control. Otherwise, it produces a single " +
398+
"output for each input batch.",
399+
true,
376400
!nativeExecution));
377401
}
378402

0 commit comments

Comments
 (0)