Skip to main content

sqb plan

Shows the execution plan without making any changes. Useful for inspecting change detection, backfill policies, and selector scope before building.

Usage

sqb --project-dir <path> plan [flags]

Flags

FlagDescription
--no-sql-validationSkip compile-time SQL syntax validation
--forceOverride change detection and plan all selected models regardless of state
--no-pythonExclude read-side Python tasks and assets from the plan
--defer-toResolve unselected model references against another target
--jsonOutput the plan as JSON
--full-refreshPlan a full rebuild of all selected models
--start-cursor-tsOverride start cursor for timestamp incremental models (ISO format)
--end-cursor-tsOverride end cursor for timestamp incremental models (ISO format)
--start-cursor-intOverride start cursor for integer incremental models
--end-cursor-intOverride end cursor for integer incremental models
--select, -sSelect specific models
--excludeExclude specific models

Output

First run:
Plan ready (13 selected)

First run (12)
  stg_customers               view
  stg_payments                view
  stg_orders                  view
  daily_order_partitioned     partition_tracked (custom)
  daily_revenue               table
  dim_customers               table
  fact_orders                 table
  customer_status_snapshot    merge (timestamp)
  hourly_order_activity       delete_insert (timestamp, microbatch)
  daily_activity_rollup       delete_insert (timestamp, microbatch)
  hourly_activity_with_daily_context delete_insert (timestamp, microbatch)
  order_status_index          delete_insert (integer)

Seeds (1)
  waffle_types
Steady state:
Plan ready (13 selected)

Normal (12)
    3 view
    3 table
    3 delete_insert (timestamp, microbatch)
    1 partition_tracked (custom)
    1 merge (timestamp)
    1 delete_insert (integer)

Seeds (1)
  waffle_types
When query or schema changes are detected, the plan shows the affected models with backfill actions and cascade information.