Skip to main content

plan_push

Function plan_push 

Source
pub fn plan_push(
    connection: &ResolvedConnection,
    desired: &Snapshot,
    breakpoints: bool,
    filters: &SnapshotFilters,
    migrations_table: &str,
) -> Result<PushPlan, CliError>
Expand description

Plans a push: introspects the live database and diffs it against desired.

The tracking table and anything filters excludes are removed from the live side first; the caller filters desired. breakpoints is unused. Each table and column the plan drops is counted in the live database: one that holds data adds a warning and makes the plan destructive (see PushPlan::destructive).

ยงErrors

Returns CliError if introspecting the live database fails, if applying the given snapshot filters fails, or if generating the diff SQL fails.