Certain advanced aspects of Structure's behavior might not have dedicated configuration pages, being controlled by system properties instead. This page lists Structure-related system properties and describes how to set them.
Setting System Properties on Startup
You can set a system property using the -D
JIRA startup option, for example:
-Dstructure.sync.guard.email.admin.cycles=5
Configuring JIRA startup options is described in this article. You will need to restart JIRA for the properties to take effect.
Setting System Properties with Script Runner
If you don't want to restart JIRA, you may use the Script Runner add-on to set system properties.
- Install Script Runner.
- Go to Administration | Add-Ons | Script Runner | Script Console.
- Select Groovy as the Script Engine.
- Enter the following code into the Script text box, adjust property name and value as needed, and click Run Now.
System.setProperty("structure.sync.guard.email.admin.cycles", "5")
The changes take effect after you restart the Structure, but the properties will be reset to their default values when you restart JIRA. In some cases for settings to take effect you have to reinstall the Structure. But If you want the changes to be permanent, please use the -D
startup option as described above.
Synchronizer Cycle Guard
The cycle guard is a component that detects conflicting synchronizers and prevents them from cycling forever, overriding each other's changes. The table below describes the system properties that control the cycle guard.
Property | Default | Explanation |
---|---|---|
structure.sync.guard.disable | false | Set to true to disable the cycle guard. Conflicting synchronizers will not be prevented from running forever. Not recommended. |
structure.sync.guard.maxAutosyncsWithoutUserChanges | 10 | The maximum number of times that a synchronizer is allowed to run, processing the changes generated by another synchronizer. If this limit is exceeded, the two synchronizers are considered to be in conflict. |
structure.sync.guard.stop.disable | false | If true , conflicting synchronizers will not be disabled automatically. The cycling may repeat after a user-generated change. |
structure.sync.guard.email.owner.disable | false | If true , the cycle guard will never send e-mail notifications to synchronizer owners. |
structure.sync.guard.email.admin.disable | false | If true , the cycle guard will never send e-mail notifications to JIRA administrators. |
structure.sync.guard.email.admin.cycles | 10 | The minimum number of times a cycle must be detected for a synchronizer before an e-mail notification about that synchronizer is sent to JIRA administrators. The counter is reset when a synchronizer is automatically disabled, so if this number is greater than 1 and automatic disabling is on, the administrators will not be notified. |
Structure size limit
Property | Default | Explanation |
---|---|---|
com.almworks.jira.structure.AOBasedStructureManager.forestSizeLimit | 100000 | The maximum number of rows that one structure can contain. Size exceeding operations will be blocked. |