Catalog management properties#

The following properties are used to configure catalog management with further controls for dynamic catalog management.

Note

Dynamic catalog management is available as a public preview in Starburst Enterprise. Contact Starburst Support with questions or feedback.

All properties described in this page are defined as follows, depending on the deployment type:

  • Kubernetes: In the additionalProperties section of the the top-level coordinator and worker nodes in the values.yaml file.

  • Starburst Admin In the files/coordinator/config.properties.j2 and files/worker/config.properties.j2 files.

catalog.management#

  • Type: string

  • Allowed values: static, dynamic

  • Default value: static

When set to static, Trino reads catalog property files and configures available catalogs only on server startup. When set to dynamic, catalog configuration can also be managed using CREATE CATALOG and DROP CATALOG. New worker nodes joining the cluster receive the current catalog configuration from the coordinator node.

Warning

Some connectors do not support dynamic catalog management, including warp-speed.

Some connectors are known not to release all resources when dropping a catalog that uses such connector. This includes all connectors that can read data from HDFS, S3, GCS, or Azure, which are Hive connector, Iceberg connector, Delta Lake connector, and Hudi connector.

The complete CREATE CATALOG query is logged and visible in the Starburst Enterprise web UI, but security-sensitive configuration properties are masked. It is still strongly recommended to use a secrets manager rather than store any credentials in plain text.

catalog.prune.update-interval#

  • Type: duration

  • Default value: 5s

  • Minimum value: 1s

Requires catalog.management to be set to dynamic. Interval for pruning dropped catalogs. Dropping a catalog does not interrupt any running queries that use it, but makes it unavailable to any new queries.

catalog.store#

  • Type: string

  • Allowed values: file, memory, starburst

  • Default value: file

Requires catalog.management to be set to dynamic. When set to file, creating and dropping catalogs using the SQL commands adds and removes catalog property files on the coordinator node. Trino server process requires write access in the catalog configuration directory. Existing catalog files are also read on the coordinator startup. When set to memory, catalog configuration is only managed in memory, and any existing files are ignored on startup. When set to starburst, catalog configurations are stored in the Backend service database.

When using the starburst value, secrets cannot be stored in plaintext. CREATE CATALOG and ALTER CATALOG fail when trying to set security-sensitive properties without using a secrets manager. Any security-sensitive properties must have their entire value set to reference a secret manager, so a configuration like mongo.connection-url=mongodb://${vault:user}:${vault:password}@example.host:27017/ is invalid. The whole URL would instead need to be stored and specified as mongo.connection-url=${vault:connection-url}.

catalog.config-dir#

  • Type: string

  • Default value: etc/catalog/

Requires catalog.management to be set to static or catalog.store to be set to file. The directory with catalog property files.

catalog.disabled-catalogs#

Requires catalog.management to be set to static or catalog.store to be set to file. Comma-separated list of catalogs to ignore on startup.

catalog.read-only#

  • Type: string

  • Default value: false

Requires catalog.store to be set to file. If true, existing catalog property files cannot be removed with DROP CATALOG, and no new catalog files can be written with identical names with CREATE CATALOG. As a result, a coordinator restart resets the known catalogs to the existing files only.