Skip to main content
Turn on Paradime State for your Bolt schedules, your own Code IDE, or both. It takes a dbt™ version change and one environment variable, with nothing to change in your project.
PrerequisitesEstimated time: 10 minutes.

Steps

1

Switch to dbt™ 2.0-latest

Paradime State runs only on dbt™ 2.0. Switch where you want to use it:
  • The whole workspace: go to Settings > General, select Change version next to the dbt™ version, choose 2.0-latest, and save. Open Code IDE sessions restart, and Bolt re-parses your schedules.
  • One Bolt environment: go to Settings > Environments, open the Bolt environment’s menu (⋮), select Environment settings, and set dbt version to 2.0-latest.
The Code IDE always uses the workspace’s dbt™ version. To use Paradime State in the Code IDE, switch the whole workspace. See Manage dbt™ version.
2

Add the PARADIME_STATE_ENABLED variable

Go to Settings > Environment Variables and select Add variable. In the New environment variable panel, enter PARADIME_STATE_ENABLED as the Key, then enter 1 in the box for each environment where you want Paradime State on:Leave a box empty to inherit the Default value, then save. Any of 1, true, yes, or on turns it on.
A Default value also reaches your Turbo CI and continuous deployment schedules, and so does a Bolt value for the environment they run in. If those schedules select with state: methods such as state:modified+, keep Paradime State off for them. See Turn it on or off for one schedule.
3

Let Bolt and the Code IDE pick up the change

  • Bolt reads the variable when it parses your schedules, not when a run starts. Saving a Default value re-parses them automatically. After saving a Bolt · <environment> value, open Bolt and select Parse schedules, or wait for the next automatic parse (about 10 minutes).
  • Code IDE: after saving your Code IDE value, open a new terminal. Terminals that were already open keep their old environment.
A Default value reaches your Code IDE the next time your IDE profile is written, for example when you save any of your Code IDE variables. To start right away, set the variable in your Code IDE box.
4

Run dbt build twice

Run dbt build, from a Bolt schedule or in the Code IDE terminal. The first run has nothing to compare against, so it builds every node and records a baseline. Run it again without changing anything: the unchanged nodes are skipped.Each state-aware run ends with a summary that starts with =========== Paradime State ===========, followed by counts such as executed, skipped, and compute saved (est.). See Read a Paradime State run.
The second run’s summary lists your unchanged nodes under skipped. If a run has no Paradime State summary at all, it didn’t go through Paradime State: see No Paradime State summary at the end of the run.

Turn it on or off for one schedule

To change one schedule without touching the rest of its environment, override the variable on that schedule. 0 turns Paradime State off and 1 turns it on.
  • YAML schedules: add the variable with env_overrides. It takes effect when Bolt next parses the schedule.
  • Schedules created in the UI: use a Schedule override. An override can only change a variable that’s already set for the schedule’s environment, so add PARADIME_STATE_ENABLED to the Bolt environment first, then override it on the schedule.

Turn it off

Set PARADIME_STATE_DISABLED to 1 in any box. It wins over PARADIME_STATE_ENABLED, so it’s the quickest way to switch one environment back to plain dbt™ without changing anything else. Deleting PARADIME_STATE_ENABLED also turns it off. As with turning it on, Bolt applies the change at its next parse. In a Code IDE terminal, export PARADIME_STATE_DISABLED=1 turns it off for that terminal until you close it.
In the Code IDE, putting the variable in front of a single command, as in PARADIME_STATE_DISABLED=1 dbt build, has no effect. Use export, or set the variable in your Code IDE box.

Next steps

Read a Paradime State run

What each line of the summary means.

Configuration reference

Tune when nodes rebuild with lag_tolerance and the other settings.

Environment variables

How variable scopes and precedence work.

Manage dbt™ version

Workspace and per-environment dbt™ versions.