From 56dff98e59b141ff955fb2dd1ebb7aaaeb7d9954 Mon Sep 17 00:00:00 2001 From: Simon Eves Date: Mon, 27 Oct 2025 11:07:50 -0700 Subject: [PATCH 1/2] Reinstate optimizer configs, but commented-out by default --- .../config/template/etc_coordinator/config_native.properties | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/presto/docker/config/template/etc_coordinator/config_native.properties b/presto/docker/config/template/etc_coordinator/config_native.properties index b08eca85..ccb7cac8 100644 --- a/presto/docker/config/template/etc_coordinator/config_native.properties +++ b/presto/docker/config/template/etc_coordinator/config_native.properties @@ -25,6 +25,10 @@ node-scheduler.max-pending-splits-per-task=2000 node-scheduler.max-splits-per-node=2000 # Optimizer flags +# New option in 0.282 to control inference of NOT NULL columns in joins (undocumented). +#optimizer.joins-not-null-inference-strategy=USE_FUNCTION_METADATA +# Use a default filter factor to estimate the selectivity of filters in queries. +#optimizer.default-filter-factor-enabled=true # Use known constraints to simplify plan and filters. optimizer.exploit-constraints=true # Rewrite large IN lists as joins for performance in some cases. From 7c654ee3cd87a6bf2af27e120ad4571d2ae6599d Mon Sep 17 00:00:00 2001 From: Simon Eves Date: Mon, 27 Oct 2025 11:08:03 -0700 Subject: [PATCH 2/2] Implement post-modification --- presto/scripts/generate_presto_config.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/presto/scripts/generate_presto_config.sh b/presto/scripts/generate_presto_config.sh index 35249a0a..48016eb2 100755 --- a/presto/scripts/generate_presto_config.sh +++ b/presto/scripts/generate_presto_config.sh @@ -83,4 +83,13 @@ if ../../pbench/pbench genconfig -p params.json -t template generated 2>&1 | gre echo_error "ERROR in pbench genconfig. Configs were not generated successfully" fi +# now perform other variant-specific modifications to the generated configs +if [[ "${VARIANT_TYPE}" == "gpu" ]]; then + # for GPU variant, uncomment these optimizer settings + # optimizer.joins-not-null-inference-strategy=USE_FUNCTION_METADATA + # optimizer.default-filter-factor-enabled=true + COORD_CONFIG="generated/etc_coordinator/config_native.properties" + sed -i 's/\#optimizer/optimizer/g' ${COORD_CONFIG} +fi + echo_success "Configs were generated successfully"