@@ -4,9 +4,9 @@ Presto C++ Configuration Properties
44
55This section describes Presto C++ configuration properties.
66
7- The following is not a complete list of all configuration properties,
8- and does not include any connector-specific catalog configuration properties
9- or session properties.
7+ The following is not a complete list of all configuration properties,
8+ and does not include any connector-specific catalog configuration properties
9+ or session properties.
1010
1111For information on catalog configuration properties, see :doc: `Connectors </connector/ >`.
1212
@@ -20,9 +20,9 @@ For information on Presto C++ session properties, see :doc:`properties-session`.
2020Coordinator Properties
2121----------------------
2222
23- Set the following configuration properties for the Presto coordinator exactly
24- as they are shown in this code block to enable the Presto coordinator's use of
25- Presto C++ workers.
23+ Set the following configuration properties for the Presto coordinator exactly
24+ as they are shown in this code block to enable the Presto coordinator's use of
25+ Presto C++ workers.
2626
2727.. code-block :: none
2828
@@ -32,17 +32,17 @@ Presto C++ workers.
3232 use-alternative-function-signatures=true
3333 experimental.table-writer-merge-operator-enabled=false
3434
35- These Presto coordinator configuration properties are described here, in
36- alphabetical order.
35+ These Presto coordinator configuration properties are described here, in
36+ alphabetical order.
3737
3838``driver.cancel-tasks-with-stuck-operators-threshold-ms ``
3939^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
4040* **Type: ** ``string ``
4141* **Default value: ** ``240000 `` (40 minutes)
4242
43- Cancels any task when at least one operator has been stuck for at
43+ Cancels any task when at least one operator has been stuck for at
4444 least the time specified by this threshold.
45-
45+
4646 Set this property to ``0 `` to disable canceling.
4747
4848``experimental.table-writer-merge-operator-enabled ``
@@ -51,16 +51,16 @@ alphabetical order.
5151* **Type: ** ``boolean ``
5252* **Default value: ** ``true ``
5353
54- Merge TableWriter output before sending to TableFinishOperator. This property must be set to
55- ``false ``.
54+ Merge TableWriter output before sending to TableFinishOperator. This property must be set to
55+ ``false ``.
5656
5757``native-execution-enabled ``
5858^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5959
6060* **Type: ** ``boolean ``
6161* **Default value: ** ``false ``
6262
63- This property is required when running Presto C++ workers because of
63+ This property is required when running Presto C++ workers because of
6464 underlying differences in behavior from Java workers.
6565
6666``optimizer.optimize-hash-generation ``
@@ -69,9 +69,9 @@ alphabetical order.
6969* **Type: ** ``boolean ``
7070* **Default value: ** ``true ``
7171
72- Set this property to ``false `` when running Presto C++ workers.
73- Velox does not support optimized hash generation, instead using a HashTable
74- with adaptive runtime optimizations that does not use extra hash fields.
72+ Set this property to ``false `` when running Presto C++ workers.
73+ Velox does not support optimized hash generation, instead using a HashTable
74+ with adaptive runtime optimizations that does not use extra hash fields.
7575
7676``regex-library ``
7777^^^^^^^^^^^^^^^^^
@@ -88,17 +88,17 @@ alphabetical order.
8888* **Type: ** ``boolean ``
8989* **Default value: ** ``false ``
9090
91- Some aggregation functions use generic intermediate types which are
92- not compatible with Velox aggregation function intermediate types. One
93- example function is ``approx_distinct ``, whose intermediate type is
94- ``VARBINARY ``.
95- This property provides function signatures for built-in aggregation
91+ Some aggregation functions use generic intermediate types which are
92+ not compatible with Velox aggregation function intermediate types. One
93+ example function is ``approx_distinct ``, whose intermediate type is
94+ ``VARBINARY ``.
95+ This property provides function signatures for built-in aggregation
9696 functions which are compatible with Velox.
9797
9898Worker Properties
9999-----------------
100100
101- The configuration properties of Presto C++ workers are described here, in alphabetical order.
101+ The configuration properties of Presto C++ workers are described here, in alphabetical order.
102102
103103``async-cache-persistence-interval ``
104104^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -302,8 +302,8 @@ The configuration properties of Presto C++ workers are described here, in alphab
302302Memory Checker Properties
303303-------------------------
304304
305- The LinuxMemoryChecker extends from PeriodicMemoryChecker and is used for Linux systems only.
306- The LinuxMemoryChecker can be enabled by setting the CMake flag ``PRESTO_MEMORY_CHECKER_TYPE=LINUX_MEMORY_CHECKER ``.
305+ The LinuxMemoryChecker extends from PeriodicMemoryChecker and is used for Linux systems only.
306+ The LinuxMemoryChecker can be enabled by setting the CMake flag ``PRESTO_MEMORY_CHECKER_TYPE=LINUX_MEMORY_CHECKER ``.
307307The following properties for PeriodicMemoryChecker are as follows:
308308
309309``system-mem-pushback-enabled ``
@@ -322,7 +322,7 @@ server is under low memory pressure.
322322* **Default value: ** ``55 ``
323323
324324Specifies the system memory limit that triggers the memory pushback or heap dump if
325- the server memory usage is beyond this limit. A value of zero means no limit is set.
325+ the server memory usage is beyond this limit. A value of zero means no limit is set.
326326This only applies if ``system-mem-pushback-enabled `` is ``true ``.
327327
328328``system-mem-shrink-gb ``
@@ -333,3 +333,31 @@ This only applies if ``system-mem-pushback-enabled`` is ``true``.
333333
334334Specifies the amount of memory to shrink when the memory pushback is
335335triggered. This only applies if ``system-mem-pushback-enabled `` is ``true ``.
336+
337+ Environment variables as values for worker properties
338+ -----------------------------------------------------
339+
340+ This section applies to worker configurations in the config.properies file
341+ and catalog property files only.
342+
343+ The value in a key-value par may reference an environment variable by using
344+ a leading `$ ` followed by enclosing the environment variable name in brackets (`{} `).
345+
346+ ```
347+ key=${ENV_VAR_NAME}
348+ ```
349+
350+ The environment variable name must match exactly with the defined variable.
351+
352+ This allows a worker to read sensitive data e.g. for access keys from an
353+ environment variable rather than having the actual value hard coded in a comnfiguration
354+ file on disk enhancing the security stance of deployments.
355+
356+ For example, consider the hive connector's `hive.s3.aws-access-key ` property.
357+ This is sensitive data and can be stored in an environment variable, for example,
358+ `AWS_S3_ACCESS_KEY ` which is set to the actual access key value. Then the following can be
359+ put into the catalog properties to read the value from the environment variable:
360+
361+ ```
362+ hive.s3.aws-access-key=${AWS_S3_ACCESS_KEY}
363+ ```
0 commit comments