Skip to content

Conversation

@saurabhmahawar
Copy link

@saurabhmahawar saurabhmahawar commented Nov 28, 2025

Description

Added new documentation explaining how to use the Presto C++ engine.
The documentation provides step-by-step instructions for configuring, and running the Presto C++ worker

Motivation and Context

There was no consolidated or beginner-friendly documentation for Presto C++ in the open-source project.
Users often had difficulty understanding how to build and run the C++ worker, what dependencies were required, and how it integrates with a Presto coordinator.

Impact

There is no performance impact.

Test Plan

Contributor checklist

  • Please make sure your submission complies with our contributing guide, in particular code style and commit standards.
  • PR description addresses the issue accurately and concisely. If the change is non-trivial, a GitHub Issue is referenced.
  • Documented new properties (with its default value), SQL syntax, functions, or other functionality.
  • If release notes are required, they follow the release notes guidelines.
  • Adequate tests were added if applicable.
  • CI passed.
  • If adding new dependencies, verified they have an OpenSSF Scorecard score of 5.0 or higher (or obtained explicit TSC approval for lower scores).

Release Notes

== NO RELEASE NOTE ==

@sourcery-ai
Copy link
Contributor

sourcery-ai bot commented Nov 28, 2025

Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

Adds new Sphinx documentation describing how to install and run the Presto C++ worker, including build, configuration, and integration steps, by introducing a dedicated installation guide and wiring it into the existing Presto C++ docs hierarchy.

File-Level Changes

Change Details Files
Introduce a dedicated installation guide for the Presto C++ worker.
  • Create a new Sphinx documentation page focused on installing and configuring the Presto C++ worker
  • Document prerequisites and dependencies required to build the C++ engine
  • Provide step-by-step instructions for building the worker from source and configuring it to connect to a Presto coordinator
  • Describe how to start and validate a running C++ worker instance
presto-docs/src/main/sphinx/presto_cpp/installation.rst
Wire the new installation guide into the existing Presto C++ documentation structure.
  • Update the main Presto C++ documentation index to reference the new installation guide
  • Ensure the new page participates in the Sphinx TOC so it appears in the rendered docs navigation
presto-docs/src/main/sphinx/presto-cpp.rst

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@linux-foundation-easycla
Copy link

linux-foundation-easycla bot commented Nov 28, 2025

CLA Signed

The committers listed above are authorized under a signed CLA.

  • ✅ login: saurabhmahawar / name: Saurabh Mahawar (e3a5a8d)

Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

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

Hey there - I've reviewed your changes - here's some feedback:

  • Since you’ve moved content under presto_cpp/installation.rst, make sure presto-cpp.rst (and any relevant toctrees) links to this new doc so it’s discoverable from the main navigation.
  • Check for any existing references or deep links to presto-cpp.rst that should now point to the new presto_cpp/installation.rst path to avoid broken links in the published docs.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- Since you’ve moved content under `presto_cpp/installation.rst`, make sure `presto-cpp.rst` (and any relevant toctrees) links to this new doc so it’s discoverable from the main navigation.
- Check for any existing references or deep links to `presto-cpp.rst` that should now point to the new `presto_cpp/installation.rst` path to avoid broken links in the published docs.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Copy link
Contributor

@steveburnett steveburnett left a comment

Choose a reason for hiding this comment

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

Thanks for the doc! I made a lot of notes, mostly formatting and phrasing to fit the tone of technical documentation. Some suggestions and ideas for you to consider.

@github-project-automation github-project-automation bot moved this from 🆕 Unprioritized to 🏗 In progress in Presto Documentation Dec 2, 2025
@saurabhmahawar saurabhmahawar force-pushed the presto-cpp-installation branch from 4a14b2d to e3a5a8d Compare December 4, 2025 12:56
Copy link
Contributor

@steveburnett steveburnett left a comment

Choose a reason for hiding this comment

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

Thanks for the revision! This is looking better, so this review is mostly focused on revision suggestions to improve the consistency of the tone with the rest of the Presto documentation.

I have tried to explain my comments and suggestions. Let me know if you have any questions or concerns about these and we can discuss them if you want to.

:backlinks: none
:depth: 1

This shows how to install and run a lightweight Presto cluster utilizing a PrestoDB Java Coordinator and Prestissimo (C++) Workers using Docker.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
This shows how to install and run a lightweight Presto cluster utilizing a PrestoDB Java Coordinator and Prestissimo (C++) Workers using Docker.
This shows how to install and run a lightweight Presto cluster utilizing a PrestoDB Java Coordinator and Prestissimo (Presto C++) Workers using Docker.
For more information about Presto C++, see the :ref:`presto-cpp:overview`.

This new page in the Presto documentation does not have to explain what is Prestissimo, we can refer to the existing doc for that, and focus this page on how to deploy Presto with Prestissimo workers.


The setup uses Meta's high-performance Velox engine for worker-side query execution. We will configure a cluster and run a test query with the built-in TPCH connector.

Introducing Prestissimo (Presto C++ Worker)
Copy link
Contributor

Choose a reason for hiding this comment

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

Please delete lines 14-23, as we are leveraging the existing doc with the new sentence in line 10.

* Docker installed.
* Basic familiarity with the terminal and shell commands.

Setup Guide
Copy link
Contributor

Choose a reason for hiding this comment

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

Delete this heading, and the formatting line below it.

Setup Guide
-----------

The recommended directory structure uses ``presto-lab`` as the root directory.
Copy link
Contributor

Choose a reason for hiding this comment

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

Move this sentence to become the first sentence after the heading Create a Working Directory.


The Coordinator requires configuration to define its role, enable the discovery service, and set up a catalog for querying.

A. Create Configuration Directory
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
A. Create Configuration Directory
1. Create Configuration Directory

* The setting ``platform: linux/amd64`` is essential for users running on Apple Silicon Macs.
* The ``volumes`` section mounts your local configuration directories (``./coordinator/etc``, ``./worker-1/etc``) into the container's expected path (``/opt/presto-server/etc``).

Step 5: Start the Cluster and Verify
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Step 5: Start the Cluster and Verify
Start the Cluster and Verify

Step 5: Start the Cluster and Verify
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

A. Start the Cluster
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
A. Start the Cluster
1. Start the Cluster


docker compose up -d

B. Verify
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
B. Verify
2. Verify


1. **Check the Web UI:** Open the Presto Web UI at http://localhost:8080.

* *Verification Result:* You should see the UI displaying 3 Active Workers (1 Coordinator and 2 Workers).
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
* *Verification Result:* You should see the UI displaying 3 Active Workers (1 Coordinator and 2 Workers).
You should see the UI displaying 3 Active Workers (1 Coordinator and 2 Workers).


* *Verification Result:* You should see the UI displaying 3 Active Workers (1 Coordinator and 2 Workers).

2. **Check Detailed Node Status (SQL Query):** Run the following query to check the detailed status and metadata about every node (Coordinator and Workers).
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
2. **Check Detailed Node Status (SQL Query):** Run the following query to check the detailed status and metadata about every node (Coordinator and Workers).
2. **Check Detailed Node Status**: Run the following SQL query to check the detailed status and metadata about every node (Coordinator and Workers).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Status: 🏗 In progress

Development

Successfully merging this pull request may close these issues.

2 participants