Troubleshoot the Coalesce CLI
Use this page when a coa command or local workflow behaves unexpectedly. Each section names a situation you might hit, then explains what is going on and what to try next.
These patterns come up often while you author pipelines locally or run validation before cloud deploy.
Database or Schema Missing When You Run Create
You might see messaging that you ran create but the database doesn't exist. coa doesn't create databases or schemas. Create them in your warehouse first, then map them in workspaces.yml.
Ref Columns Show as UNKNOWN Type
If ref() columns show as UNKNOWN type, check the following:
- You're using single quotes inside
ref(). Double quotes silently break resolution. - The target Node name and location are spelled correctly.
- If you use aggregations through CTEs or JOINs, add explicit casts, for example
MAX(col)::TIMESTAMP_TZ.
Validate Shows Column Reference Errors on SQL Nodes
The Column References scanner produces false positives on SQL Nodes when you use Node Type V2. Aliased columns are flagged as missing source columns. These don't block local create or run but may block coa plan in some environments. Run coa validate --verbose to see which errors are real.
Plan Fails Without Showing Specific Errors
When coa plan fails with a message like issues preventing deployment and the output doesn't show what is wrong, run coa validate --verbose separately to see specific errors. Common causes include Column References false positives when you author with Node Type V2, or pre-existing reference errors on V1 Nodes. Try a fresh environment. Plan behavior can vary between environments with and without existing deploy state.
V2 Nodes Work in the CLI but Fail in the Coalesce App
When you author with Node Type V2, the CLI doesn't enforce isRequired config fields from your Node type definition, for example insertStrategy. The Coalesce App enforces them. Add config annotations to your .sql file, for example @insertStrategy('INSERT'). Run coa describe sql-format for the full annotation reference.
UNION ALL Returns Only the First SELECT in a V2 SQL Node
With Node Type V2, the SQL parser currently captures only the first source block. UNION ALL written as plain SQL is silently dropped. Use the insertStrategy: UNION ALL config approach instead of writing UNION ALL directly in your SQL.
Preview SQL Before You Execute
Always use --dry-run --verbose, for example coa create --include "{ NODE }" --dry-run --verbose. Check that the table name isn't blank and column types aren't UNKNOWN.
Dry-Run Shows CREATE TABLE With No Columns
Your SQL likely has a parse error, such as a typo or missing keyword. The SQL parser for Node Type V2 silently produces zero columns when it can't parse the SELECT. Check your SQL syntax carefully.
Validate Reports Error Parsing Repo Files
Check that data.yml has fileVersion: 3, not fileVersion: 1. Also check for malformed @id or @nodeType annotations in your .sql files.
What's Next?
Continue with the rest of the CLI documentation when you need setup steps, command syntax, local authoring, deploy workflows, or policy detail.
- Command Line Interface for installation, authentication, profiles, and proxy configuration.
- CLI Commands for
coacommand reference and flags. - Build Pipelines With the Coalesce CLI for workspaces, Nodes, validation, and local runs.
- Deploy Pipelines to the Coalesce App Using COA for plan, deploy, refresh, and managed Environments.
- CLI Support Policy & Usage Recommendations for supported versions and upgrade practices.
- Node Type V2 for SQL-first Nodes, annotations, and the editor.