Skip to content

Commit 2cec1cd

Browse files
committed
[native] Enable Parquet and Spatial by default
The default build of PrestoC++ should enable Parquet and Spatial support. Both do not require separate adapters (unlike other features) and dependencies are present in a default dependency installation.
1 parent f5f0bb7 commit 2cec1cd

File tree

5 files changed

+23
-18
lines changed

5 files changed

+23
-18
lines changed

.github/workflows/prestocpp-linux-adapters-build.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,6 @@ jobs:
6666
-DTREAT_WARNINGS_AS_ERRORS=1 \
6767
-DENABLE_ALL_WARNINGS=1 \
6868
-DCMAKE_BUILD_TYPE=Release \
69-
-DPRESTO_ENABLE_PARQUET=ON \
7069
-DPRESTO_ENABLE_S3=ON \
7170
-DPRESTO_ENABLE_GCS=ON \
7271
-DPRESTO_ENABLE_ABFS=OFF \
@@ -76,7 +75,6 @@ jobs:
7675
-DPRESTO_STATS_REPORTER_TYPE=PROMETHEUS \
7776
-DPRESTO_MEMORY_CHECKER_TYPE=LINUX_MEMORY_CHECKER \
7877
-DPRESTO_ENABLE_TESTING=OFF \
79-
-DPRESTO_ENABLE_SPATIAL=ON \
8078
-DCMAKE_PREFIX_PATH=/usr/local \
8179
-DThrift_ROOT=/usr/local \
8280
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \

.github/workflows/prestocpp-linux-build-and-unit-test.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -86,12 +86,10 @@ jobs:
8686
-DTREAT_WARNINGS_AS_ERRORS=1 \
8787
-DENABLE_ALL_WARNINGS=1 \
8888
-DCMAKE_BUILD_TYPE=Release \
89-
-DPRESTO_ENABLE_PARQUET=ON \
9089
-DPRESTO_ENABLE_REMOTE_FUNCTIONS=ON \
9190
-DPRESTO_ENABLE_JWT=ON \
9291
-DPRESTO_STATS_REPORTER_TYPE=PROMETHEUS \
9392
-DPRESTO_MEMORY_CHECKER_TYPE=LINUX_MEMORY_CHECKER \
94-
-DPRESTO_ENABLE_SPATIAL=ON \
9593
-DCMAKE_PREFIX_PATH=/usr/local \
9694
-DThrift_ROOT=/usr/local \
9795
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \

.github/workflows/prestocpp-linux-build.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ jobs:
4242
-DTREAT_WARNINGS_AS_ERRORS=1 \
4343
-DENABLE_ALL_WARNINGS=1 \
4444
-DCMAKE_BUILD_TYPE=Debug \
45-
-DPRESTO_ENABLE_PARQUET=ON \
4645
-DPRESTO_ENABLE_S3=ON \
4746
-DPRESTO_ENABLE_GCS=ON \
4847
-DPRESTO_ENABLE_ABFS=OFF \
@@ -51,7 +50,6 @@ jobs:
5150
-DPRESTO_ENABLE_JWT=ON \
5251
-DPRESTO_STATS_REPORTER_TYPE=PROMETHEUS \
5352
-DPRESTO_MEMORY_CHECKER_TYPE=LINUX_MEMORY_CHECKER \
54-
-DPRESTO_ENABLE_SPATIAL=ON \
5553
-DPRESTO_ENABLE_TESTING=OFF \
5654
-DCMAKE_PREFIX_PATH=/usr/local \
5755
-DThrift_ROOT=/usr/local \

presto-native-execution/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ option(PRESTO_ENABLE_GCS "Build GCS support" OFF)
5454
option(PRESTO_ENABLE_ABFS "Build ABFS support" OFF)
5555

5656
# Forwards user input to VELOX_ENABLE_PARQUET.
57-
option(PRESTO_ENABLE_PARQUET "Enable Parquet support" OFF)
57+
option(PRESTO_ENABLE_PARQUET "Enable Parquet support" ON)
5858

5959
# Forwards user input to VELOX_ENABLE_CUDF.
6060
option(PRESTO_ENABLE_CUDF "Enable cuDF support" OFF)
@@ -70,7 +70,7 @@ option(PRESTO_ENABLE_JWT "Enable JWT (JSON Web Token) authentication" OFF)
7070

7171
option(PRESTO_ENABLE_ARROW_FLIGHT_CONNECTOR "Enable Arrow Flight connector" OFF)
7272

73-
option(PRESTO_ENABLE_SPATIAL "Enable spatial support" OFF)
73+
option(PRESTO_ENABLE_SPATIAL "Enable spatial support" ON)
7474

7575
# Set all Velox options below and make sure that if we include folly headers or
7676
# other dependency headers that include folly headers we turn off the coroutines

presto-native-execution/README.md

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -81,8 +81,15 @@ Compilers (and versions) not mentioned are known to not work or have not been tr
8181

8282
### Build Prestissimo
8383
#### Parquet and S3 Support
84-
To enable Parquet and S3 support, set `PRESTO_ENABLE_PARQUET = "ON"`,
85-
`PRESTO_ENABLE_S3 = "ON"` in the environment.
84+
Parquet support is enabled by default. To disable it, add `-DPRESTO_ENABLE_PARQUET=OFF`
85+
to the `EXTRA_CMAKE_FLAGS` environment variable.
86+
87+
`export EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS -DPRESTO_ENABLE_PARQUET=OFF"`
88+
89+
To enable S3 support, add `-DPRESTO_ENABLE_S3=ON` to the `EXTRA_CMAKE_FLAGS`
90+
environment variable.
91+
92+
`export EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DPRESTO_ENABLE_S3=ON"`
8693

8794
S3 support needs the [AWS SDK C++](https://github.com/aws/aws-sdk-cpp) library.
8895
This dependency can be installed by running the target platform build script
@@ -91,8 +98,10 @@ from the `presto/presto-native-execution` directory.
9198
`./velox/scripts/setup-centos9.sh install_aws`
9299

93100
#### JWT Authentication
94-
To enable JWT authentication support, set `PRESTO_ENABLE_JWT = "ON"` in
95-
the environment.
101+
To enable JWT authentication support, add `-DPRESTO_ENABLE_JWT=ON` to the
102+
`EXTRA_CMAKE_FLAGS` environment variable.
103+
104+
`export EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DPRESTO_ENABLE_JWT=ON"`
96105

97106
JWT authentication support needs the [JWT CPP](https://github.com/Thalhammer/jwt-cpp) library.
98107
This dependency can be installed by running the script below from the
@@ -109,6 +118,8 @@ follow these steps:
109118

110119
*CMake flags:* `PRESTO_STATS_REPORTER_TYPE=PROMETHEUS`
111120

121+
`export EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DPRESTO_STATS_REPORTER_TYPE=PROMETHEUS"`
122+
112123
*Runtime configuration:* `runtime-metrics-collection-enabled=true`
113124

114125
* After installing the above dependencies, from the
@@ -117,8 +128,8 @@ follow these steps:
117128
* Use `make unittest` to build and run tests.
118129

119130
#### Arrow Flight Connector
120-
To enable Arrow Flight connector support, add to the extra cmake flags:
121-
`EXTRA_CMAKE_FLAGS = -DPRESTO_ENABLE_ARROW_FLIGHT_CONNECTOR=ON`
131+
To enable Arrow Flight connector support, add to the `EXTRA_CMAKE_FLAGS` environment variable:
132+
`export EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DPRESTO_ENABLE_ARROW_FLIGHT_CONNECTOR=ON"`
122133

123134
The Arrow Flight connector requires the Arrow Flight library. You can install this dependency
124135
by running the following script from the `presto/presto-native-execution` directory:
@@ -128,8 +139,8 @@ by running the following script from the `presto/presto-native-execution` direct
128139
#### Nvidia cuDF GPU Support
129140

130141
To enable support with [cuDF](https://github.com/facebookincubator/velox/tree/main/velox/experimental/cudf),
131-
add to the extra cmake flags:
132-
`EXTRA_CMAKE_FLAGS = -DPRESTO_ENABLE_CUDF=ON`
142+
add to the `EXTRA_CMAKE_FLAGS` environment variable:
143+
`export EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -DPRESTO_ENABLE_CUDF=ON"`
133144

134145
In some environments, the CUDA_ARCHITECTURES and CUDA_COMPILER location must be explicitly set.
135146
The make command will look like:
@@ -139,8 +150,8 @@ The make command will look like:
139150
The required dependencies are bundled from the Velox setup scripts.
140151

141152
#### Spatial type and function support
142-
To enable support for spatial types and functions, add to the extra cmake flags:
143-
`EXTRA_CMAKE_FLAGS = -PRESTO_ENABLE_SPATIAL`
153+
Spatial type and function support is enabled by default. To disable it, add to `EXTRA_CMAKE_FLAGS` environment variable:
154+
`export EXTRA_CMAKE_FLAGS="${EXTRA_CMAKE_FLAGS} -PRESTO_ENABLE_SPATIAL=OFF"`
144155

145156
The spatial support adds new types (OGC geometry types) and functionality for spatial calculations.
146157

0 commit comments

Comments
 (0)