Skip to content

Conversation

@mblanco-denodo
Copy link
Contributor

Description

Added dev container for Presto native C++

Motivation and Context

Ease Presto native C++ development

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.

Release Notes

Please follow release notes guidelines and fill in the release notes below.

== NO RELEASE NOTE ==

@mblanco-denodo mblanco-denodo requested a review from a team as a code owner June 18, 2025 14:18
@steveburnett
Copy link
Contributor

@mblanco-denodo, there have been some fixes to the CI tests since the last activity on this PR. If you rebase, these pending tests might pass.

@mblanco-denodo
Copy link
Contributor Author

Hi! I've rebased and updated the devcontainer generation to be mounted from CLion, so that it uses the prestissimo dependency image leveraging us from the need to maintain the devcontainer. This should work if the dependency images work. I've also added documentation on how to configure it

@mblanco-denodo mblanco-denodo changed the title Add Presto native C++ dev container build: Add Presto native C++ dev container Oct 10, 2025
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 documentation! I made some suggestions and had questions. Let me know what you think, and ask if anything I wrote is unclear.

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 fixes! One minor suggestion.

@mblanco-denodo mblanco-denodo force-pushed the dev_container_c++ branch 2 times, most recently from f9a403f to 68c61fd Compare October 27, 2025 14:31
Copy link
Contributor

@czentgr czentgr left a comment

Choose a reason for hiding this comment

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

FYI, we also have another devcontainer setup: https://github.com/prestodb/presto-dev
But this is more about integration with CLion.

# Copy shared libs to the directory /runtime-libraries
mkdir /runtime-libraries && \
bash -c '!(LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib:/usr/local/lib64 ldd ../cmake-build-debug/presto_cpp/main/presto_server | grep "not found")' && \
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib:/usr/local/lib64 ldd ../cmake-build-debug/presto_cpp/main/presto_server | awk 'NF == 4 { system("cp " $3 " /runtime-libraries") }' No newline at end of file
Copy link
Contributor

Choose a reason for hiding this comment

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

Need new line at the end.

@@ -0,0 +1,6 @@
#!/bin/bash
# Before executing this script, you should compile presto_server
Copy link
Contributor

Choose a reason for hiding this comment

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

What happens if you don't. Will CLion throw an error?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No, this is only to match the release environment, making sure that you're executing the server this the same libraries as the release version. This way, if your compilation lacks any library, you should see failures during the execution before the code is integrated into master

steveburnett
steveburnett previously approved these changes Oct 27, 2025
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.

LGTM! (docs)

Copy link
Contributor

@unidevel unidevel left a comment

Choose a reason for hiding this comment

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

Thanks, looks good!

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants