To avoid unnecessary high resource consumption, Structure moderates the generation time for every structure by limiting it to a fixed value. If a structure is not generated within the existing time limit, the generation process is paused. This applies both to generators added as a part of the structure Automation settings and the additional transformations that maybe applied on top.
Whether the generation processed stopped because of the Automation or Transformations, a user will see the empty structure with only the skeleton visible and a notification banner will appear above the structure, letting users know generation is paused.
If a timed-out structure is addressed in the ‘structure()’ JQL function, the JQL search of that query will return an error message.
To find out which generators or transformations are working too slow, click More on the notification banner. Additional information will be shown, displaying the overall percentage of time that each generator took before generation was paused. The highest number will indicate the slowest generator.
If the generation process stopped while running the generators, which are part of the Automation settings, you will see the list of all generators configured and the percentage of time they consumed. This structure will also be marked as paused (see sections below for details).
If the part of the structure created by Automation was loaded successfully and the timeout was reached while executing the transformations, you will see one Insert generator that represents the part of the structure that was added by Automation (Insert structure) and then you will see the list of all the transformations that finished successfully and the one on which the generation process was paused. This means if you had more transformations applied after this last one, they won't be mentioned in this list as they haven't been executed.
After reviewing and adjusting the automation and transformations, click Resume on the banner. If a structure still takes too long to generate, generation will be paused again, and the notification banner will update the ‘More’ section with relevant details. More actions from a user will be required, until all of the existing generators will work within the time limit.
Deleting a generator or transformation from a structure doesn’t resume generation. You must first click the ‘Resume’ button. This allows you to perform multiple actions before resuming.
When generation is resumed successfully, the structure will be updated with content and the banner’s message will be changed accordingly. At this point, you can close the banner.
Changing the Allowed Generation Time for a Structure
If generation is paused by a generator or transformation that you consider reasonably configured, you can increase the default time limit of 30 seconds and let the structure generate for a longer time period.
To edit the time limit:
- Go to Structure | Manage Structures in the Jira menu. Locate the structure you want to adjust (in most cases, this will be the Current Structure).
- Click Configure.
- Adjust the Time limit to the number of seconds you want generation to wait before timing out.
Click Update to apply the new settings.
Time Limit Guidelines
When changing the Time limit, keep the following in mind:
- A generation time limit can’t be less than 5 seconds or more than the system-wide hard limit
- Although the value is entered in seconds, the limit can be set to several minutes
- ‘Control’ structure permission is required to change the time limit
Identifying a Paused Structure
If generation is paused in a structure, the AUTOMATION PAUSED indicator will appear next to the structure's name on the Manage Structures screen.
You can quickly locate paused structures by clicking the Paused option in the left menu.
Changing the Default Generation Time Limit
To change the default generation time limit for all structures, go to Administration | Structure | Defaults. Look for the the Structure Automation Defaults section and click Change.
Only Jira administrators can change this setting.
If the time limit was manually set for a specific structure, it will not be changed to the default one. Only structures using the default time limit will be affected.
System-wide Hard Limit
The system-wide generation time limit is initially set for 10 minutes. It can be adjusted by using Script Runner or other similar tools, or by changing the
structure.gfs.generationTimeHardLimit property, with the Structure Dark Feature and Fine Tuning Interface. The Generation Time Hard Limit setting accepts an integer number in seconds.
The generation time limit in a structure is only taken into account if it is less than the system-wide hard limit; otherwise it is ignored and the system-wide hard limit is used instead.