Skip to main content

Error: Cannot clone transient object

Error

If you receive an error stating that transient objects cannot be cloned when deploying Nodes in Coalesce, this typically occurs due to Snowflake's fundamental restrictions on transient table operations. The error may appear when Coalesce attempts to use its default clone-based deployment strategy on transient tables.

You may also encounter this error when an object in your project previously referenced a different schema location that has since been deleted. During deployment, Coalesce attempts to clean up objects from their old locations, which can cause failures if the previous schema no longer exists.

SQL compilation error: Transient object cannot be cloned to a permanent object. name=OperationFailedError, code=002120, data={"errorCode":"002120","age":0,"sqlState":"0A000","queryId":"01bef863-0002-4f27-0000-83f907f70bce"}

Possible Causes

  • Cloning restrictions are the primary cause. Transient objects cannot be cloned into permanent objects in Snowflake due to platform limitations.
  • Schema location changes can trigger this error. When an object previously referenced a different schema location and that schema has been deleted, deployment attempts to clean up the old location and encounters errors.
  • Node type changes may not deploy properly. Changing Node types from regular tables to transient tables sometimes results in tables remaining as regular tables instead of becoming transient.

Possible Solutions

  • Drop the problematic table manually in Snowflake and then run the deployment again. This recreates the table with the correct configuration.
  • Use advanced deployment strategies for transient tables. Advanced deployment strategies are designed to handle transient table limitations.
  • Leverage Marketplace solutions. New Nodes that support transient tables are available in the Marketplace under Base Node Types Advanced Deploy.
  • Review schema mappings before deployment. Ensure all referenced schemas exist and are properly configured in your Build Settings to avoid cleanup errors on deleted schemas.