Clear System Locks

Due for Release 21/09/2026

Overview

Admin users can now see and clear stale system locks directly from a new System → Clear Locks screen, instead of needing to contact Catch-e support for most stale-lock situations. The screen is built on Catch-e's existing lock-management API, which has been extended to support the filtering, restricted-lock and deletion behaviour described below.

Who Can Use This

  • You must be logged in with the Admin role. The menu item and the screen are not available to any other role.

  • Catch-e enables Clear Locks per tenant — it isn't a self-service setting.

How It Works

  1. Go to System → Clear Locks. The menu item sits directly under Workgroups and directly above Change Password.

  2. The screen opens with two filters in the header: User Login and Table Name, both defaulting to --All--. The User Login list only shows users who currently hold at least one lock; the Table Name list includes process-style entries (for example a scheduled-job queue name) as well as real database tables.

  3. Change either filter. The Go button, greyed out by default, becomes active as soon as you change a filter value.

  4. Click Go. The button greys out again and the list of current locks below refreshes to match your filters.

  5. Each row in the list shows a checkbox, User Login, Full Name, Session Id, Role, Table Name, Created, Duration and Timeout. The list scrolls if there are more locks than fit on screen.

  6. Tick the checkbox on any lock to select it. If that lock shares a Session Id with other rows, ticking one automatically ticks all the others in the same session — and unticking one clears the whole group. This lets you clear everything held by one user's session in a single action.

  7. Certain locks are shown on a highlighted (pink) background — see Restricted Locks below. You can only select a lock (or a session group) where none of the locks involved are restricted; for a restricted lock, contact Catch-e support.

  8. Click Delete, which stays disabled until at least one lock is selected. A confirmation prompt appears before anything is removed, worded differently depending on whether a slow-running query affects the table involved (see Expected Behaviour below).

  9. Once confirmed, the selected locks are removed and a success alert appears. (Exact dialog wording — [NEEDS EXACT COPY FROM MOCKUP]) If a lock's session is currently active, that user is signed out and will need to log in again the next time they use their screen. Every deletion is recorded in an audit trail, showing who originally held the lock and who deleted it.

Restricted Locks

Some locks are more sensitive because clearing them mid-use can corrupt a sequence or an in-progress billing record, rather than just interrupt someone's screen edit. These are:

  • A lock on an entire database table (rather than a single record)

  • A lock tied to a billing record currently being processed

  • A lock tied to system-level configuration records

Restricted locks are shown on a pink background. They can't be deleted from this screen — you can see them in the list but can't tick their checkbox. Contact Catch-e support if a restricted lock needs to be cleared. Where a restricted lock shares a session with one or more non-restricted locks, you can't select any lock in that group — the whole group is treated as restricted for selection purposes.

Expected Behaviour

Normal locks

A lock that isn't restricted and isn't affected by a slow-running query can be selected and deleted. Deleting it removes the lock, signs out the owning session if it's still active, and records the deletion in the audit trail.

Restricted locks

Restricted locks are shown highlighted but can't be selected — the checkbox isn't available. (Exact dialog wording — [NEEDS EXACT COPY FROM MOCKUP]) Contact Catch-e support if one needs to be cleared.

A table affected by a long-running query

If the table behind a selected lock is currently affected by a long-running database query, deletion is blocked outright and you're shown a warning explaining that it isn't available while the query is running. (Exact dialog wording — [NEEDS EXACT COPY FROM MOCKUP]) If it needs to be cleared urgently, contact Catch-e support.

A lock that no longer exists

If a lock you selected has already been cleared — by another user, or because it expired — by the time you click Delete, you're shown an alert rather than the request silently doing nothing or partially succeeding:

"Some or all of the lock(s) no longer exist. Please select again."

No locks are removed until every selected lock is confirmed to still exist.

Session grouping

Ticking any one lock's checkbox automatically ticks every other lock sharing the same Session Id, and unticking does the reverse — subject to the restricted-lock rule above (a session group containing any restricted lock can't be selected at all).

Known limitations

  • The lock list shown on screen reflects the moment the page was loaded, or the moment you last clicked Go — it does not refresh itself automatically, and there's no "as at" time shown alongside it. If a lock is created or cleared elsewhere while you have the Clear Locks screen open, that change won't appear until you click Go again.

  • Clicking Cancel on a record's Edit screen returns you to display mode but does not release the lock that Edit took — the lock stays in place (with no expiry) until the session that created it ends entirely. This is existing Catch-e behaviour, not something Clear Locks changes, but it's why locks build up in the first place and worth knowing when interpreting what you see on this screen.