Issue Lock for Jira (who's editing)

Introduction

The plugin gives you, your employees and clients a way to lock down issues for edit. This means that an issue can be edited by one user at a time. This avoids simultaneous updates, and therefore loss of information in your company.

The issue view is added with a Lock UI box (see next section). This is visible for all issue views (e.g. Search for issues), including Kanban/Scrum boards and Service Desk views (e.g. from queues).

Locks can be enabled on all projects (or a sub set), and has a number of options available per project:

  • Instant fetch of lock when user opens issue.
  • Instant release of lock when user updates something or cancels edit.
  • For a service desk project, a column in a queue can show the current user holding the lock.

Any issue update operation is captured by the lock:

  • inline/window edit
  • attachment operations
  • worklog operations
  • transitions
  • move issue
  • clone issue
  • delete issue

Voting and watching are not captured, since they are essentially not updates to an issue.

We hope you enjoy the functionality of JIRA Issue Lock.

For more introduction and overview:

  • Click here to view the plugin on the official marketplace page.
  • Click beneath to view a short video of the plugin. Note that the interface in the video is a bit outdated.Though, the principle of the lock is the same. Please look at the latest screenshots instead for a look on the Lock UI. 

Lock UI

The Lock UI box is shown under the summary of an issue (all issue views in Jira).

It will tell if the lock is free, or who is editing. It will also tell if someone is viewing the page.

The lock will also have a button a user can click, if the user needs to lock down the issue. If clicked, the user will acquire the lock, unless someone else is editing. If someone else is editing, the user joins the queue of the lock. Once released by the owner of the lock, the user acquires the lock.

Behaviour

An edit-session starts when a user has acquired the lock (user must have a kind of edit permission on the issue, e.g. "Edit Issues", or "Delete issues").

When the session ends the lock is released, and other users may now acquire it.

​The lock can be acquired from e.g. the Issue view page, a SCRUM board (e.g. performing workflow transition) or another page in JIRA that contains the possibility of executing issue updates. Only one lock can be acquired in a single web browser window.

Having acquired the lock, only that user can perform issue updates. Note that the configuration includes the option of letting system and project administrators bypass the lock (they will not observe the lock graphically).

When attemping to acquire a lock, or having acquired a lock, an info text box is visible beneath the issue key (when scrolling down it will show in the right bottom corner).

For a user viewing an issue (and having edit permission, and not owning lock), the user that is currently editing is shown in the info box. 

​If a user browses away from the issue view (having acquired the lock for it), the edit-session times out after a given time interval (configurable, default is 30 seconds). This gives the user some time to get back to the issue before he looses the lock.

​Note that if no user has acquired the lock, and the user performs an issue update, then no non-default JIRA behavior can be observed, except if on the Issue-view page.

Remarks

The plugin does only work within the Jira User Interface. Issue updates performed through REST/SOAP calls, and other API methods (e.g. from custom JIRA plugins), are not supported, and thus, needs no lock.

Comments and transitions executed from the Jira Service Desk portal pages are not supported as well.

Supported Applications

JIRA Core, Software and Service Desk.

Installation

Installation works by either downloading the addon from Atlassian Marketplace and uploading it, or by installing it directly from the Addons section of JIRA.

Configuration

To enable Issue Lock for a project, open the Add-ons panel in Jira. Here you will find a link to the Issue Lock admin page, in the left side menu.

Click the link, and the admin page shows up.

You can enable/disable projects, and set the different options like auto acquire, auto release, timeout values and so on. You can also limit, such that only admin or sysadmins can override a lock queue.

FAQ (Frequently asked questions)

1. What happens if a user closes the browser without releasing a lock?

The plugin has event listeners for this, that  tries to release the lock programmatically when the browser is closed.

2. What happens if a user locks his computer, and the internet browser is still open on a issue?

A lock will automatically release after some minutes. The interval is configurable by the sysadmin. Default is 5 minutes. 

3. What happens if a user shutdowns the computer without properly closing the browser, or the browser crashes?

Locks that are not "maintained" by a live client, will automatically be released after 1 minute.