MetricSign
EN|NLRequest Access
Medium severitydata flow

Power BI Refresh Error:
DF-Snowflake-InvalidDataType

What does this error mean?

A column in the Snowflake connector has a data type that is not recognized or supported in the ADF data flow context.

Common causes

  • 1The Snowflake table was recently altered to use a Snowflake-specific type (GEOGRAPHY, GEOMETRY) that ADF does not support
  • 2The ADF dataset schema was imported before a Snowflake table schema change and now references a type that no longer exists
  • 3A custom Snowflake user-defined type (UDT) is referenced in the dataset schema
  • 4The Snowflake connector in ADF does not yet support a newly introduced Snowflake data type

How to fix it

  1. 1In ADF Monitor, identify the column name and type from the error detail.
  2. 2In Snowflake, run DESCRIBE TABLE <tablename> to see the current column types and identify the problematic column.
  3. 3If the column uses an unsupported type like GEOGRAPHY or GEOMETRY, add a derived column transformation in ADF to cast it to string before reading: use TO_VARCHAR(column) in Snowflake or a SQL query source with the cast embedded.
  4. 4Update the ADF dataset schema by opening the dataset and clicking Import schema — this reloads the current column types from Snowflake.
  5. 5If the column is not needed in ADF, exclude it from the data flow column selection to avoid mapping it entirely.
  6. 6Enable debug mode and run a data preview to confirm the fix before the full pipeline run.

Frequently asked questions

Does ADF support all Snowflake data types?

No — standard Snowflake types (VARCHAR, NUMBER, TIMESTAMP, BOOLEAN, DATE) map cleanly to Spark. VARIANT/ARRAY/OBJECT map to string. GEOGRAPHY and GEOMETRY are unsupported and must be cast to string in the source query.

How do I cast a GEOGRAPHY column to string in a Snowflake SQL query source?

In the ADF dataset, switch from 'Table' mode to 'Query' mode and write: SELECT ST_AsGeoJSON(geo_column) AS geo_column_str, other_columns FROM my_table. This converts the geospatial column to GeoJSON string that ADF can handle.

Can I prevent this from happening again after Snowflake schema changes?

Add a schema change check to your deployment pipeline — compare DDL before and after each change. Alternatively, use column projection to select only needed columns rather than selecting all.

Will downstream Power BI datasets be affected?

Yes — the data flow fails without reading from Snowflake. Downstream datasets and Power BI reports will show stale data.

Official documentation: https://learn.microsoft.com/en-us/azure/data-factory/data-flow-troubleshoot-guide

Other data flow errors