- Concept
- Version · 5.2.2
- Integration guide
Understand deployment output for Google BigQuery
Last updated: August 26, 2026
Deploying to Google BigQuery prints more per-changeset detail than other databases: a result line for every changeset, a breakdown when a changeset holds several statements, and a confirmation of each object it creates. This page explains what each line means.
The changeset summary line
When you deploy to Google BigQuery, Liquibase prints a line for each changeset as it runs. The line always names the changeset and its result, and adds the row count and elapsed time when they apply.
ChangeSet db.sql::cs02::alice: EXECUTED, rows affected: 1, elapsed: 2074ms
ChangeSet db.sql::cs01::alice: EXECUTED, elapsed: 644msA changeset that changes no rows, such as a CREATE TABLE, reports only the elapsed time. The row count appears when a changeset ran statements that affect rows.
Zero rows is reported, not hidden
rows affected: 0 means the statement matched nothing. This is the most useful line on the page for anyone debugging a migration, because an UPDATE or DELETE that quietly matched no rows looks identical to a successful one everywhere else.
Per-statement breakdown
A changeset holding more than one statement is broken down underneath the summary, one line per statement. A single-statement changeset has no breakdown.
ChangeSet db.sql::cs05::alice: EXECUTED, rows affected: 9, elapsed: 9577ms
INSERT: 1 row
INSERT: 1 row
UPDATE: 5 rows
DELETE: 2 rowsThe breakdown is what shows a partial miss. Here the changeset reports two rows affected, and the second statement is the one that matched nothing:
ChangeSet db.sql::cs07::alice: EXECUTED, rows affected: 2, elapsed: 5845ms
UPDATE: 2 rows
UPDATE: 0 rowsObject confirmation
After a changeset that creates an object, Liquibase queries BigQuery to confirm the object exists and prints what it found. Stored logic also reports whether it compiled.
Note: Object confirmed is a success message. It is easy to read as a warning the first time you see it, because nothing else in a Liquibase deployment reports back on the object it just made.
Failures
A changeset that fails reports FAILED and the reason underneath. When the database returns a position, Liquibase prints it as a compilation error:
ChangeSet db.sql::cs11::alice: FAILED
Compilation error at [2:35]: Could not cast literal to type DATEAnything else is reported as Error: followed by the message. In both forms the driver's own prefix and its trailing SQL dump are stripped, so what you see here is shorter than the raw driver output you may have seen in earlier releases.
Rollback
Rolling back prints the same shape with ROLLED BACK or ROLLBACK FAILED in place of the result. There is no object confirmation on a rollback, because rolling back a created object drops it, so a rolled-back DDL changeset shows the elapsed time alone.
The -sql commands print none of this
update-sql and rollback-sql generate SQL without connecting to run it, and they suppress this output entirely. If you script a CI gate that greps deployment output, run it against the deploying command rather than the preview, because the preview prints no changeset results at all.
Note: This output is specific to Google BigQuery. Other databases report deployments in the usual Liquibase format.