Skip to main content
Coral reads engine settings from config.toml in the local state directory. See Local state for the default location and the CORAL_CONFIG_DIR override.

Memory

Use [engine.memory] to cap query-engine memory retained by DataFusion and Coral-owned operators such as dependent joins.
String limits must use binary units: Ki, Mi, Gi, or Ti. Integer limits are interpreted as bytes. The limit must be greater than zero.

Dependent joins

Dependent joins let Coral rewrite eligible SQL joins into dependent predicate pushdown, so join-key values from one side can be sent as filters to an HTTP-backed source. The default settings live under [engine.dependent_join].
All numeric limits must be greater than zero.

Per-source overrides

Use [engine.dependent_join.per_source.<source>] to override any dependent-join setting for one source. Unspecified keys inherit the global value.
Per-source overrides use the installed source name, which is the SQL schema name before the table. In the example above, github applies to joins that read from tables such as github.pull_requests. Precedence is:
  1. per-source override
  2. global [engine.dependent_join] value
  3. Coral’s built-in default
Table-level overrides are not supported.