Snowflake - Use Stream and incremental load settings (Business Rule)
Applies to
Platform: Snowflake
These business rules check Use Stream and incremental loads on Snowflake. Use Stream needs a model object with a table (ID-30000) and excludes an incremental load (ID-30004), and a Stage of a Snowflake Stage Files project supports neither (ID-30002, ID-30003). Each rule raises an error, which blocks generation in the client.
Messages
Each message names the model object and its type in place of <model object name> and <type>. The Generate Artifacts page lists the messages without the rule ID.
Use Stream on a Virtual model object
The client shows an error with this text:
Model object '<model object name>' of type '<type>' has implementation type 'Virtual' and usage of stream defined. This is only supported with implementation type 'Permanent', 'FactLoadStrategy' or 'Cached'.
On the model object card, point to the error icon to see this message with the rule ID: Error ID-30000.
Cause: a dataflow has Use Stream true, and Implementation Type is Virtual.
Fix: set Implementation Type to Cached or Permanent, or set Use Stream to false in every dataflow.
Use Stream with an incremental load
The client shows an error with this text:
Model object '<model object name>' of type '<type>' has both incremental load and usage of streams configured. Use only one of each.
On the model object card, point to the error icon to see this message with the rule ID: Error ID-30004.
Cause: a dataflow has Use Stream true and maps BG_IncrementalFilter.
Fix: clear the mapping of BG_IncrementalFilter, or set Use Stream to false in that dataflow.
Incremental load on a Stage that uses COPY INTO
The client shows an error with this text:
Model object '<model object name>' of type '<type>' has incremental load configured. This is not supported together with Snowflake COPY INTO command.
On the model object card, point to the error icon to see this message with the rule ID: Error ID-30002.
Cause: a Stage of a Snowflake Stage Files project maps BG_IncrementalFilter.
Fix: clear the mapping of BG_IncrementalFilter.
Use Stream on a Stage that uses COPY INTO
The client shows an error with this text:
Model object '<model object name>' of type '<type>' has usage of stream configured. This is not supported together with Snowflake COPY INTO command.
On the model object card, point to the error icon to see this message with the rule ID: Error ID-30003.
Cause: a dataflow of a Stage in a Snowflake Stage Files project has Use Stream true.
Fix: set Use Stream to false.
On a Stage, a newly mapped BG_IncrementalFilter also shows the error of Supported Term Data Types (Business Rule) until you set its data type.
Check the result
The error icon is gone from the model object, and generation is no longer blocked by it.
Example
In a Data Vault project on Snowflake, the Stage SALESHEAD maps BG_IncrementalFilter and has Use Stream true. The client shows:
Model object 'SALESHEAD' of type 'Stage' has both incremental load and usage of streams configured. Use only one of each.
Related articles
- Reference: Use Stream (Model Object), BG_IncrementalFilter, Implementation Type (Model Object)
- See also: Configure an incremental load, Snowflake Stage Files, Understand warnings and errors