OBLYTECH Logo
OBLYTECH Logo
Troubleshooting ServiceNow Update Sets and Release Management: A Practical Guide
Home / Guides, Services and Solutions / Now Platform and Development: Guides and Services / Update Sets and Release Management: Guides and Services / Troubleshooting ServiceNow Update Sets and Release Management: A Practical Guide

Troubleshooting ServiceNow Update Sets and Release Management: A Practical Guide

Update set troubleshooting starts with the symptom you see. The page covers exports that hang, imports that fail, customizations that break after import, rollbacks that fail, duplicate exports and changes that do not reach production. For each one it lists the likely causes, where to look and the fix.

Update Sets and Release Management Overview

Update Sets capture configuration changes (forms, workflows, business rules) made in one ServiceNow instance and allow you to move those changes to another instance (dev to prod). Release Management coordinates multiple update sets and manages rollback. When update sets fail to export, import, or deploy, you need systematic troubleshooting to identify and fix the root cause.

Symptom: Update Set Export Fails or Hangs

Likely causes: the update set contains too many objects, there are circular dependencies, or the export system is under load.

Where to look: check the update set size. Navigate to your update set record and count objects (customizations, data, metadata). Very large update sets (1000+ objects) can be slow to export. Check update set status: is it marked as “export in progress”? If so, it might be slow but still running; wait a bit longer. If stuck, check system logs (System Diagnostics > Logs) for errors during export.

Look for circular dependencies: if Table A has a field that references Table B, and Table B has a field that references Table A, export can loop. Most tools detect and handle this, but custom extensions might have issues. Check related lists in the update set: are there many inter-dependent objects?

Fix: break large update sets into smaller ones (each with 100-500 objects). Export and import in batches. For circular dependencies, ensure they are handled correctly (create both tables before creating the references, or use the import tool’s dependency resolution). If system is under load, try exporting at off-hours.

Symptom: Update Set Import Fails with Error

Likely causes: the target system does not have a prerequisite update set, there are conflicts with existing customizations, or the import system is out of disk space.

Where to look: read the error message carefully. Common errors: “prerequisite update set missing” (another update set must be imported first), “conflict in table definition” (the table definition in the update set differs from the target), or “insufficient disk space” (not enough room for import).

Check prerequisites: some update sets depend on others (if you are importing a module update, you might need to import the platform update first). ServiceNow usually identifies prerequisites, but verify by looking at related lists in the update set record. Check for conflicts: if your target instance has customizations not in the update set, import might fail trying to overwrite. Review the conflict list before importing.

Fix: import prerequisite update sets first. Resolve conflicts: either revert local customizations, or merge them with the update set (complex). Ensure sufficient disk space on the target instance (most clouds manage this automatically, but on-premises instances might be full). Retry the import after space is freed.

Symptom: After Import, Customizations Disappeared or Are Broken

Likely causes: the import overwrote customizations, or the update set was incomplete.

Where to look: check what objects the update set contained. If it updates a form, did it include all fields and customizations, or just the ones changed? If you added custom fields to a form, and the update set updates the form but does not include those fields, they will be lost during import. Check the update set record (view customizations included) and compare to what you expect.

Fix: ensure update sets are complete. If you modify a form, include all fields in the update set, not just the changed ones. Use a pre-import backup (most teams back up prod before importing large updates). If customizations are lost, restore from backup and re-do them after the import. To prevent this, test imports in a test environment first (import the update set there, verify nothing is broken, then import to prod with confidence).

Symptom: Rollback Failed

Likely causes: the rollback update set is not complete, or the system state has changed since the original import.

Where to look: After a commit, check whether your release offers a back-out option for the retrieved update set, and review what it would reverse before you use it. If rollback fails, check if there are new customizations made after the original import that are preventing rollback (you cannot rollback object A if object B now depends on A in a way that did not exist before).

Fix: check whether a back-out option is available for the committed set, and test it in a non-production instance first. Test rollback in a test environment before deploying (simulating a problem, then rolling back, verifies the process works). If rollback fails, investigate what changed after the import and either resolve conflicts or deploy a fix update set instead of rolling back.

Symptom: Same Customization Is Exported Multiple Times

Likely causes: the customization was edited multiple times, and each edit was captured as a separate entry. Or, multiple people edited the same customization and each one generated an export entry.

Where to look: check the update set records. If you see 3 entries for “ServiceNow IT Service Management Application”, they are likely the same app modified 3 times. Look at timestamps: when was each edit? Multiple entries for the same object might indicate a merge issue (in source control, if using that).

Fix: update sets should be exported once they are stable. If you are making multiple changes to the same object, do it in one pass, then export. If you have multiple entries, review them: do they all need to be imported, or can some be skipped? If it is just redundancy, import the latest version (it supersedes the earlier ones). If using source control, ensure branching and merging is correct so you do not have duplicate entries.

Symptom: Changes in Prod Are Not Reflected When Deployed

Likely causes: the customization was changed in prod after being imported, or there is a cache issue.

Where to look: check when the change was made. If it was after the import, someone in prod changed it, and the update set is now stale. If it should have been updated but is not, clear caches (use the cache flush option your administrators normally use, or clear the browser cache). Restart the service if it is a persistent issue.

Fix: avoid making changes to the same customization in both dev and prod (it causes conflicts and confusion). Establish a clear change path: changes are made in dev, exported, imported to test, tested, then imported to prod. No changes should be made directly in prod (except emergency fixes, which are then exported and brought back to dev).

Best Practices to Prevent Update Set Issues

Use version control: track update set exports in git or similar, so you can see what changed and revert if needed. Test in a staging environment before deploying to prod. Take a restorable backup or clone of production before major imports, on whatever schedule your organization already uses. Document update sets: name them clearly (include date, team, what changed), add descriptions. Monitor deployment: watch for errors or warnings during import. Plan rollback: ensure rollback update sets are ready before deploying to prod.

Triage a failed preview in order

A failed preview is not a reason to start over. Many failures sort into a small number of causes, and the fastest route is to work through them in a fixed order rather than opening records at random.

  1. Count the collisions and group them by table. A cluster on one table usually has one cause.
  2. For each group, compare the source and target versions of one record, and note which fields differ.
  3. Check whether the target change has a matching set or change record. An unrecorded change is a common cause.
  4. Check the dependency order. A missing prerequisite set produces errors that look like collisions but disappear once it is applied.
  5. Decide, per group, which version survives, and write the decision in the set description before committing.

What a preview result usually means

Preview result Likely meaning First check
Collision on a standard form or list Target was edited directly after the baseline Search the target’s change history for that record
Missing prerequisite A dependent set has not been transferred or committed Confirm the order and the status of each prerequisite
Same collision after a rerun The decision was not saved, or the wrong version was kept Compare the set contents with the decision note

Can we commit with collisions still open?

Not without a recorded decision for each one. An open collision means the team has not decided which version is correct, and committing anyway applies whichever result the process defaults to.

Why did the collisions appear after a quiet week?

Someone probably changed the target, or an administrator made a fix in production. Check the change history of the affected records before assuming the source is wrong.

Is the preview itself reliable?

It shows direct conflicts with the target. It cannot show whether a change is correct, so read the set contents alongside the preview result. Repeated failures for the same reason are a sign that the grouping rules in the common mistakes guide need to be applied again, not that the tool has failed.

Moving update sets between instances in order, and choosing between fixing forward and backing out

Most failed commits start earlier than the commit. Update sets are meant to be applied on the target in the order they were built on the source, one at a time, with each one previewed and its problems resolved before the next is retrieved. Retrieving several together and previewing them as a batch is how the same record ends up with competing versions and a preview full of collisions.

A sequence that holds up in most teams:

  • Close the update set on the source only when the work in it is finished, so it is not edited after it has been exported.
  • Retrieve it on the target, preview it, and read every problem the preview raises before choosing how to resolve it.
  • Commit it, then check the changed records on the target.
  • Move the next set only after the previous one is committed and checked.

Two error messages come up often. The message about conflicts within the update set with the same name usually means the set holds more than one version of the same record. Resolve it at the source by keeping the version you intend to ship, then export and preview again. Choosing a specific update during the preview is safe only when you are sure which version is the right one. The message that a retrieve is unavailable because another operation is running means the instance is busy with a deployment-type task. Let that task finish and check its progress before you start another, because a second operation started in parallel is the likeliest cause of a half-applied change.

Backing out is not a time machine. A back-out typically returns the recorded changes to their earlier versions, but it does not undo data that users or integrations created in the meantime, and it can fail when later changes now depend on the ones being reversed. Decide before the commit which route you will take if the change misbehaves. A small, isolated configuration change is often safe to back out. A change that other records now depend on is usually better fixed forward with a new, small update set.

Write the decision down in the release plan, next to the test evidence. The change governance and release management approach describes how teams keep that record, and the release readiness testing and acceptance checklist lists the checks to run before and after a commit.

Update set tables, states and preview options to check when a commit fails

A failed commit is easier to diagnose once you know where an update set lives. A local set is stored in the Update Set table, its captured changes sit in the Customer Update table, a set pulled from another instance is a Retrieved Update Set, and preview problems are stored as their own records. Start with those problem records.

These are common out-of-box names. Check them on your own instance and release, because labels and defaults change.

What it is Table Where to look
Local update set sys_update_set System Update Sets, then Local Update Sets
Captured change sys_update_xml Customer Updates related list on the set
Retrieved update set sys_remote_update_set System Update Sets, then Retrieved Update Sets
Preview problem sys_update_preview_problem Preview problems related list on the retrieved set

A local set is typically In progress, Complete or Ignore. A retrieved set typically moves through Loaded, Previewed and Committed. A set still In progress on the source is normally not offered for retrieval.

On each preview problem the usual choices are to accept the remote update or skip it. Accepting applies the incoming version over the target record. Skipping keeps the target version and leaves that record out of the commit.

Example (hypothetical): a retrieved set previews with six problems, four of them on records for the same form. Open the preview problem list, group by the record type, compare one source and target pair, and decide once for the group. A fifth problem names a missing prerequisite, and it usually clears once the earlier set is committed and the later set is previewed again. Write each decision in the set description before you commit.

What is the difference between accepting and skipping a remote update?

Accepting a remote update replaces the target record with the incoming version when the set is committed. Skipping leaves the target record as it is and removes that update from the commit.

Does a retrieved update set stay on the instance after the commit?

Typically yes. The set remains in the Retrieved Update Sets list with a Committed state, so you can review what it contained. Current releases commonly offer a back-out option on committed sets, but it reverses the recorded changes only and does not undo data created since, so confirm it on your release first.

Why is an update set missing from the list on the target?

The usual causes are that the set is not yet marked Complete on the source, or that the update source record on the target points at the wrong instance or uses credentials without access.

Before the next release window, read the change governance and release management service guide, run the release readiness testing and acceptance checklist, and compare your route with the DevOps and release management guide.

Frequently asked questions

Can we import the same update set multiple times?

Yes, but typically you should not need to. An update set should be idempotent: importing it twice should result in the same state, not duplicating customizations. If you need to re-import, test in a dev environment first to ensure it does not cause issues.

What if our update set is very large?

Break it into smaller, logically-grouped update sets. Instead of one massive export, create separate ones for each module or application. This makes troubleshooting easier (if one fails, the others still work) and speeds up import/export.

How often should we update the prod instance?

Frequency depends on your release cycle. Most organizations do monthly or quarterly releases. ServiceNow releases updates quarterly; if you are running an older version, consider upgrading as part of your release cycle. More frequent releases reduce risk (each change is smaller) but require more process overhead.

Talk to Oblytech

Planning, running or fixing a ServiceNow programme? Tell us where you are and we will suggest a sensible next step.

Contact us