Summary
When validating a Snowflake adapter or running a pipeline, you might see either of these errors:
Validation error in Reltio DPH:
Resource task
<task>is not available or not started. Please ensure that adequate privileges were granted to the role.Snowflake task error:
Base table
<database>.<schema>."dataTable"dropped, cannot read from stream"mergesStream".
This article explains likely causes and the exact steps to resolve each situation.
Root Causes
- A. Task suspended / not started: The Snowflake TASK that the adapter relies on is in a SUSPENDED state or never started due to prior failures/suspension.
- B. Base table dropped: The Snowflake STREAM (e.g.,
mergesStream) is tied to a base table (e.g.,dataTable). If that table were dropped or replaced, the stream would become invalid, and dependent tasks would fail.
Prerequisites & Permissions
- Snowflake role with sufficient privileges (typically OWNERSHIP on the target TASK/STREAM or OPERATE on TASK and USAGE on the database/schema). Coordinate with your Snowflake admin if needed.
- Access to the Reltio Data Pipeline Hub and the tenant/adapter you are operating on.
- Open a Support ticket to assist you in this remediation process immediately.
- API access token for Reltio (if using the API resolution).
Tip: Use quoted identifiers for case-sensitive object names (e.g.,
"MyTask").
Resolution A — Resume a Suspended Snowflake Task
Confirm the Task State
Run in Snowflake (Worksheet or CLI):
SHOW TASKS IN SCHEMA <database>.<schema>; SHOW TASKS LIKE '<task>' IN SCHEMA <database>.<schema>;
Check the state column. If it is SUSPENDED, proceed to resume.
Resume the Task
ALTER TASK <database>.<schema>."<task>" RESUME;
Re‑validate the Adapter
Return to Reltio Data Pipeline Hub → Adapter → Validate and confirm the error no longer appears.
Resolution B — Stream Invalid Because Base Table Was Dropped
If you see an error like:
Base table
<database>.<schema>."dataTable"dropped, cannot read from stream"mergesStream".
…it means the stream’s base table was deleted or replaced. Fix by recreating adapter resources (streams and tasks) in Reltio DPH.
Verify What’s Missing (Optional)
SHOW TABLES LIKE 'dataTable' IN SCHEMA <database>.<schema>; SHOW STREAMS LIKE 'mergesStream' IN SCHEMA <database>.<schema>; DESCRIBE STREAM <database>.<schema>."mergesStream";
Recreate Adapter Resources via Reltio API
Endpoint
POST https://<env>-data-pipeline-hub.reltio.com/api/tenants/<tenant>/adapters/<adapterName>/actions/recreate_resources
Request body
{
"types": ["streams", "tasks"],
"force": true
}What it does
types: Which resources to rebuild."streams"→ recreates Snowflake streams used by the adapter."tasks"→ recreates Snowflake tasks (schedules/chains that run SQL like MERGE/INSERT/UPDATE).
force: true→ drop and recreate even if resources already exist (use with care in non‑prod first).
Caution:
force: truewill drop and recreate the specified resources. Ensure no critical workloads depend on the existing task/stream definitions before running in production.
Re‑validate the Adapter
After the API completes, go to Reltio Data Pipeline Hub → Adapter → Validate. The prior errors should be resolved.
End‑to‑End Troubleshooting Flow
- See validation error about task not available/not started →
- Check task state in Snowflake → If SUSPENDED, run
ALTER TASK ... RESUME;→ Re‑validate. - If error persists or you see “Base table ... dropped, cannot read from stream ...” →
- Recreate resources via the Reltio API with
types=["streams","tasks"]andforce=true→ Re‑validate.
Examples
Resume a specific task (example names)
ALTER TASK PROD_DB.MDM_SCHEMA."mergesTask" RESUME;
Example cURL for resource recreation
curl -X POST \
"https://prod-data-pipeline-hub.reltio.com/api/tenants/12345/adapters/snowflakeAdapter/actions/recreate_resources" \
-H "Authorization: Bearer $RELTIO_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"types": ["streams", "tasks"],
"force": true
}'
Comments
Please sign in to leave a comment.