Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 1 addition & 21 deletions presto/docker/config/template/etc_common/catalog/hive.properties
Original file line number Diff line number Diff line change
@@ -1,21 +1 @@
# Select the connector implementation. "hive-hadoop2" uses the Hive connector
# backed by Hadoop 2.x libraries which is the default for Presto's Hive support.
connector.name=hive-hadoop2

# Configure the metastore implementation. "file" enables a simple file-based
# metastore suitable for local testing without an external Hive Metastore (HMS).
# See https://prestodb.io/docs/current/installation/deployment.html#configuring-a-file-based-metastore for more details.
hive.metastore=file
# Root directory where the file-based metastore stores table and partition
# metadata. This path is inside the container volume so state persists across
# server restarts during tests.
hive.metastore.catalog.dir=file:/var/lib/presto/data/hive/metastore
# Allow DROP TABLE statements. Enabled to make smoke/perf tests able to reset
# state and clean up artifacts without manual intervention.
hive.allow-drop-table=true

# Control whether Presto can split files for parallel reads. Disable when the
# file compression/format isn't splittable to avoid read failures. TPCH Parquet
# test data commonly uses SNAPPY compression that isn't splittable at the file
# level here, hence this must be false.
hive.file-splittable=false
# This file will be overridden by a coordinator or worker specific configuration file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Select the connector implementation. "hive-hadoop2" uses the Hive connector
# backed by Hadoop 2.x libraries which is the default for Presto's Hive support.
connector.name=hive-hadoop2

# Configure the metastore implementation. "file" enables a simple file-based
# metastore suitable for local testing without an external Hive Metastore (HMS).
# See https://prestodb.io/docs/current/installation/deployment.html#configuring-a-file-based-metastore for more details.
hive.metastore=file
# Root directory where the file-based metastore stores table and partition
# metadata. This path is inside the container volume so state persists across
# server restarts during tests.
hive.metastore.catalog.dir=file:/var/lib/presto/data/hive/metastore
# Allow DROP TABLE statements. Enabled to make smoke/perf tests able to reset
# state and clean up artifacts without manual intervention.
hive.allow-drop-table=true

# Control whether Presto can split files for parallel reads. Disable when the
# file compression/format isn't splittable to avoid read failures. TPCH Parquet
# test data commonly uses SNAPPY compression that isn't splittable at the file
# level here, hence this must be false.
hive.file-splittable=false
25 changes: 25 additions & 0 deletions presto/docker/config/template/etc_worker/catalog/hive.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Select the connector implementation. "hive-hadoop2" uses the Hive connector
# backed by Hadoop 2.x libraries which is the default for Presto's Hive support.
connector.name=hive-hadoop2

# Configure the metastore implementation. "file" enables a simple file-based
# metastore suitable for local testing without an external Hive Metastore (HMS).
# See https://prestodb.io/docs/current/installation/deployment.html#configuring-a-file-based-metastore for more details.
hive.metastore=file
# Root directory where the file-based metastore stores table and partition
# metadata. This path is inside the container volume so state persists across
# server restarts during tests.
hive.metastore.catalog.dir=file:/var/lib/presto/data/hive/metastore
# Allow DROP TABLE statements. Enabled to make smoke/perf tests able to reset
# state and clean up artifacts without manual intervention.
hive.allow-drop-table=true

# Control whether Presto can split files for parallel reads. Disable when the
# file compression/format isn't splittable to avoid read failures. TPCH Parquet
# test data commonly uses SNAPPY compression that isn't splittable at the file
# level here, hence this must be false.
hive.file-splittable=false

# Parquet read options
parquet.reader.chunk-read-limit=0
parquet.reader.pass-read-limit=0
Comment on lines 25 to 27
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These configurations do not appear in the documentation. Can you please add comments that describe what these parameters do and why they are needed?

Copy link
Contributor Author

@simoneves simoneves Nov 4, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They aren't needed, other than to prove a point that the Coordinator and Worker configs can be different, but apparently @devavret tweaks them on his local laptop system, so asked for them to be exposed.

The values are not documented in Velox itself, but appear to be passed to the cuDF Chunked Parquet Reader, and that documentation is here:

https://docs.rapids.ai/api/libcudf/stable/classcudf_1_1io_1_1chunked__parquet__reader#a49f5549b53257828d50f5fa65114e07a

The values in that API are in bytes, but it appears that the config parser is smart enough to convert (say) 16M into (16 * 1024 * 1024).

I have added comments to the template file based on the parameter descriptions in that documentation.

2 changes: 2 additions & 0 deletions presto/docker/docker-compose.java.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ services:
- ./config/generated/java/etc_common:/opt/presto-server/etc
- ./config/generated/java/etc_coordinator/config_java.properties:/opt/presto-server/etc/config.properties
- ./config/generated/java/etc_coordinator/node.properties:/opt/presto-server/etc/node.properties
- ./config/generated/java/etc_coordinator/catalog/hive.properties:/opt/presto-server/etc/catalog/hive.properties
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should the updates be in docker-compose.common.yml?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They can't be because configs are now per-variant


presto-java-worker:
extends:
Expand All @@ -18,5 +19,6 @@ services:
- ./config/generated/java/etc_common:/opt/presto-server/etc
- ./config/generated/java/etc_worker/config_java.properties:/opt/presto-server/etc/config.properties
- ./config/generated/java/etc_worker/node.properties:/opt/presto-server/etc/node.properties
- ./config/generated/java/etc_worker/catalog/hive.properties:/opt/presto-server/etc/catalog/hive.properties
depends_on:
- presto-coordinator
2 changes: 2 additions & 0 deletions presto/docker/docker-compose.native-cpu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ services:
- ./config/generated/cpu/etc_common:/opt/presto-server/etc
- ./config/generated/cpu/etc_coordinator/config_native.properties:/opt/presto-server/etc/config.properties
- ./config/generated/cpu/etc_coordinator/node.properties:/opt/presto-server/etc/node.properties
- ./config/generated/cpu/etc_coordinator/catalog/hive.properties:/opt/presto-server/etc/catalog/hive.properties

presto-native-worker-cpu:
extends:
Expand All @@ -23,3 +24,4 @@ services:
- ./config/generated/cpu/etc_common:/opt/presto-server/etc
- ./config/generated/cpu/etc_worker/node.properties:/opt/presto-server/etc/node.properties
- ./config/generated/cpu/etc_worker/config_native.properties:/opt/presto-server/etc/config.properties
- ./config/generated/cpu/etc_worker/catalog/hive.properties:/opt/presto-server/etc/catalog/hive.properties
2 changes: 2 additions & 0 deletions presto/docker/docker-compose.native-gpu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ services:
- ./config/generated/gpu/etc_common:/opt/presto-server/etc
- ./config/generated/gpu/etc_coordinator/config_native.properties:/opt/presto-server/etc/config.properties
- ./config/generated/gpu/etc_coordinator/node.properties:/opt/presto-server/etc/node.properties
- ./config/generated/gpu/etc_coordinator/catalog/hive.properties:/opt/presto-server/etc/catalog/hive.properties

presto-native-worker-gpu:
extends:
Expand All @@ -28,3 +29,4 @@ services:
- ./config/generated/gpu/etc_common:/opt/presto-server/etc
- ./config/generated/gpu/etc_worker/node.properties:/opt/presto-server/etc/node.properties
- ./config/generated/gpu/etc_worker/config_native.properties:/opt/presto-server/etc/config.properties
- ./config/generated/gpu/etc_worker/catalog/hive.properties:/opt/presto-server/etc/catalog/hive.properties