---
title: "Common Troubleshooting"
description: "Solutions to common issues you may hit while working in Corridor."
---

<div style="padding: 14px 16px; border: 0.5px solid #AFA9EC; border-radius: 12px; background: #EEEDFE; margin-bottom: 1.5rem;">
  <div style="display: flex; align-items: center; gap: 7px; margin-bottom: 8px;">
    <svg width="16" height="16" viewBox="0 0 16 16" fill="none">
      <path d="M9 2L4 9h4l-1 5 5-7H8l1-5z" stroke="#7f77dd" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"/>
    </svg>
    <span style="font-size: 11px; font-weight: 500; letter-spacing: 0.05em; text-transform: uppercase; color: #534AB7;">TL;DR</span>
  </div>
  <div style="font-size: 13px; color: #3C3489; line-height: 1.65;">
    A symptom-first index of the errors you are most likely to hit on the platform, grouped by area (login, registration, policy, simulation, approvals, monitoring, permissions, data). Each entry lists what you see, why it happens, and how to resolve it.
  </div>
</div>

## How to use this page

Find the section that matches where the error appeared (the page, dialog, or workflow step). Read the **What you see** line to confirm it matches your symptom, then follow the **Resolution** steps.

:::tip
Most "save failed" errors surface a banner at the top of the form. Hover the field labels with red outlines: the form-level message often explains the exact field that needs fixing.
:::

---

## 1. Login and session

### "Invalid username or password"

* **What you see**: Login form shows a red banner after submitting credentials.
* **Why**: The username does not exist, the password is wrong, or the account is locked.
* **Resolution**: Confirm the username is correct, reset the password if needed, and contact your admin if the account may be locked.

### OTP / MFA failure

* **What you see**: After entering credentials, the OTP step fails or times out.
* **Why**: The OTP code was wrong, expired, or the OTP delivery channel (email/SMS) failed.
* **Resolution**: Request a new code. If repeated codes do not arrive, contact your admin to verify the OTP provider is configured.

### Session timeout

* **What you see**: Mid-session you are redirected to the login page.
* **Why**: Your access token has expired, or the OAuth2 / SAML session has been invalidated.
* **Resolution**: Sign in again. If this happens repeatedly within minutes, ask your admin to check the configured session lifetime.

### "Authentication method not configured"

* **What you see**: The login screen does not show the expected OAuth2 or SAML button.
* **Why**: The auth provider is not enabled or is misconfigured on the server.
* **Resolution**: This is an admin-side fix. The admin must verify the provider entry in the user authentication config.

---

## 2. Registration errors (Tables, Data Elements, Features, Models)

### "Cannot save primary DataTable without setting the primary column"

* **Where**: Data Vault → Table details.
* **Why**: A table marked as **Primary** must declare which column is the primary key.
* **Resolution**: Open the table, select a column, and mark it as the primary column before saving.

### "Duplicate parameter `{name}` found"

* **Where**: Model or Algorithm registration.
* **Why**: Two input or output parameters share the same name.
* **Resolution**: Rename one of the duplicates. Parameter names must be unique within a single Model/Algorithm.

### "Duplicate dataset alias found"

* **Where**: Model registration, Training & Validation Data section.
* **Why**: Two datasets are referenced under the same alias.
* **Resolution**: Give each dataset a unique alias (for example, `train`, `validation`, `holdout`).

### "This form has error(s), saving failed"

* **Where**: Any registration form.
* **Why**: One or more required fields are empty or contain invalid values.
* **Resolution**: Scroll up and look for fields with red outlines. Hover the label to see the specific message.

---

## 3. Policy and Strategy errors

### "You have selected Action Rule, not allowed to add more configs"

* **Where**: Strategy / Offer creation.
* **Why**: An Action Rule must be the terminal step in a rule chain. Nothing can follow it.
* **Resolution**: Remove the Action Rule if you need more steps, or move it to the end of the configuration.

### Workflow validation errors

* **What you see**: The workflow builder flags one or more nodes red.
* **Why**: Common causes are `missing-connection`, `invalid-rule`, `circular-dependency`, `unreachable-node`, or `invalid-strategy-config`.
* **Resolution**: Click the flagged node to see the specific message. Connect dangling ports, remove cycles, and ensure every node is reachable from the entry point.

---

## 4. Simulation errors

### "Cannot save simulation which is already VERIFIED"

* **Why**: A Verified simulation is immutable so that downstream comparisons remain reproducible.
* **Resolution**: Clone the simulation and edit the clone.

### "Cannot create a simulation as output-alias for `{entity}` not set"

* **Why**: The underlying Model or Framework has no declared output alias, so the simulation cannot collect results.
* **Resolution**: Open the Model/Framework, add an output alias, and re-run the simulation.

### "Cannot delete simulation which is being used in data records"

* **Why**: The simulation's output is referenced by one or more data records or test sets.
* **Resolution**: Remove the dependent references first, or archive instead of deleting.

### "Cannot remove comparison for What-If Analysis simulations"

* **Why**: A What-If simulation always requires a baseline to compare against.
* **Resolution**: Pick a different baseline rather than removing the comparison entirely.

### "Cannot compare a simulation with itself"

* **Why**: Baseline and candidate must be different simulations.
* **Resolution**: Select a different baseline (or candidate) from the dropdown.

### Forbidden keyword in SQL simulation

* **What you see**: Simulation rejected with a "forbidden keyword" message.
* **Why**: The SQL contains a blocked keyword (for example, `DROP`, `DELETE`, `TRUNCATE`). Simulations are read-only by design.
* **Resolution**: Rewrite the query using `SELECT`-style read operations only.

---

## 5. Approval workflow errors

### "Object Type `{type}` is not workflowable"

* **What you see**: Attempting to attach an approval workflow to an entity is rejected.
* **Why**: Approval workflows are supported only on these object types: Data Element, Feature, Dataset, Model, Global Function, Policy, Framework, Report, and Reason Code. Anything else, such as a Data Table or a Quality Profile, cannot have one attached.
* **Resolution**: Apply the workflow on a supported object type. See [Configure an Approval Workflow](/user-guide/admin-guide/configure-approval-workflow/).

### "In a group approval, all inputs need to be either in Draft or Approved status"

* **Where**: Requesting an approval that bundles draft inputs (group approval). The UI opens an **Inputs need attention** popup listing the blocking inputs.
* **Why**: One of the object's inputs is already in **Pending Approval** (or Rejected) through another object's request. An object can only sit in one pending approval at a time, so a shared input that is pending elsewhere blocks this request.
* **Resolution**: Wait for the other request to finish, or cancel it, then request approval again. See [Approve an Object](/user-guide/how-tos/approve-an-object/).

### Approval assignment fails

* **Why**: The chosen user is not part of the responsibility group, or you lack permission to assign approvers.
* **Resolution**: Ask an admin to add the user to the relevant approval group, or pick an eligible user.

---

## 6. Permissions and access

### An action button is greyed out or access is denied

* **What you see**: A button you expect is greyed out, or an action fails with an access-denied message.
* **Why**: You do not have Read, Write, Delete, or Publish permission on this object.
* **Resolution**: Request access from the object's owner or your admin. Permissions are managed per-object.

### "Email notification provider is not configured"

* **What you see**: Setting up an alert that sends email fails to save.
* **Why**: The platform has no SMTP / email provider configured.
* **Resolution**: This is an admin-side fix. Configure an email provider in the platform settings before creating email-based alerts.

---

## 7. Data ingestion and parsing

### "Failed to parse JSON" / "Failed to decode text content"

* **Where**: Importing CSV, JSON, or uploading a definition file.
* **Why**: The file is malformed or uses an unsupported encoding.
* **Resolution**: Validate the file in your editor (UTF-8, valid JSON), then retry.

### "Unable to fetch columns: `{error}`"

* **Where**: Registering or refreshing a Data Table.
* **Why**: The platform cannot reach the source, or credentials have changed.
* **Resolution**: Verify the connection in Data Vault. Test connectivity with your admin if needed.

### "No data found for given id"

* **Where**: Opening a Data Element / Table / Feature by URL or after a refresh.
* **Why**: The object was deleted, or the ID in the URL is wrong.
* **Resolution**: Return to the listing page and re-open the object. Check Trash if soft-delete is enabled.

---

## 8. Monitoring, dashboards, and alerts

### "Failed to refresh data"

* **Where**: A dashboard tile or report.
* **Why**: The underlying data source is unavailable, the query timed out, or the schema has changed.
* **Resolution**: Retry the refresh. If it keeps failing, open the report definition and verify the columns still exist.

### "Failed to export data"

* **Where**: Exporting a report from a dashboard.
* **Why**: The export format is incompatible with the data, or the file is too large.
* **Resolution**: Try a smaller date range or a different format (CSV instead of Excel).

### "Failed to delete alert as it has been triggered `{N}` times"

* **Why**: Alerts with trigger history are retained for audit purposes.
* **Resolution**: Disable the alert instead of deleting it, or archive the alert's history first if your role allows it.

### Dates in a Monitoring Dashboard load as text or come out wrong

* **Where**: Monitoring Dashboard, after a file upload or an in-grid edit.
* **What you see**: Date values stay as plain strings, sort incorrectly, or show the wrong day and month.
* **Why**: Either the column is not typed **DateTime** in the dashboard's Data Schema, so its values are never date-parsed, or an ambiguous date was written day-first. Parsing is fixed month-first: `11-12-25` is read as November 12, 2025.
* **Resolution**: Set the column's type to DateTime in the Data Schema, and supply month-first (MM-DD-YYYY) or ISO (YYYY-MM-DD) dates. There is no per-column date format setting.

### Invalid email format in alert recipients

* **What you see**: Alert save fails with a red outline on the To/Cc/Bcc field.
* **Why**: One of the listed emails is malformed.
* **Resolution**: Use comma-separated, properly formed email addresses (e.g. `name@domain.com`).

---

## 9. Execution and run-time errors

These come from artifact execution (a Feature being evaluated, a Model being scored, a Policy being simulated) rather than from saving definitions.

### Execution dependency error

* **What you see**: A run fails citing a missing or unresolvable dependency.
* **Why**: An upstream object (Feature, Model, Data Element) referenced by the running artifact is missing, archived, or has not been built.
* **Resolution**: Open the failing artifact, identify the upstream reference in the error message, and republish or rebuild it.

### Execution runtime error

* **What you see**: The run reports the exception type and message from the artifact's own code (for example, `KeyError: 'col_x'`, `ZeroDivisionError`).
* **Why**: A bug or unexpected input in the artifact's expression or model code.
* **Resolution**: Reproduce on a small sample, fix the expression or model code, and rerun.

### "Zero records found"

* **What you see**: Sample generation or a simulation completes but returns no rows.
* **Why**: Filters, joins, or the time window leave the result set empty.
* **Resolution**: Widen the filter, check that the source table actually has rows in the selected period, and verify join keys.

### Step partial success

* **What you see**: A job step ends with a "partial success" status with N failed records.
* **Why**: Some input records hit a per-record error (bad value, missing input) while others passed.
* **Resolution**: Open the step logs, inspect the failing records, and clean the source data or harden the artifact to handle the edge case.

---

## 10. Resources, artifacts, and configs

### "Artifact creation failed: `{error}`"

* **Where**: Building an artifact bundle (e.g. for a Model or Framework).
* **Why**: Missing dependencies, invalid Python / definition syntax, or a compilation error in the bundled code.
* **Resolution**: Read the error text for the underlying cause. Fix the dependency or syntax error and rebuild.

### "Transform not found"

* **Where**: Opening a Dataset or Model that uses a transform.
* **Why**: The transform was deleted or renamed while still referenced.
* **Resolution**: Reattach a valid transform, or recreate the missing one.

---

## Still stuck?

If your symptom is not listed, capture the following before contacting support:

1. The exact error text (or screenshot).
2. The object type and ID you were working on.
3. The action you took just before the error appeared.

See also: [FAQs](/references/faqs/) and [Glossary](/references/glossary/).
