The Atlassian Community Forums are currently in read-only mode. We will be relaunching on a new platform on September 22 (read more here). We apologize for the extended downtime. For concerns or questions, please email communitymanagers@atlassian.com. See you on the other side, on the new Atlassian Community Forums! :)

×

Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 
  • Community
  • Q&A
  • Jira
  • Questions
  • Synchronization of different scripts of the scriptrunner on the global object at jira instance level

Synchronization of different scripts of the scriptrunner on the global object at jira instance level

Eugene Onegin
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
December 7, 2022

We have a large business process with complex logic in our company. In many places, such as post-functions, listeners, etc., the content of the same page in the confluence is updated.

The page is updated using the REST-API. First, we get the content of the page in storage format (via the REST-API), parse it, add the necessary information from the jira to the content, and then update the content of the page in confluence using the REST request. On the dev server, everything works well, but most likely on the prod server (there, in different tasks that update the page, 100+ people can work, who can potentially change the page from jira at the same time), problems may arise and some data will be lost.

Scriptrunner scripts are run as separate processes, so you can't use standard java tools that use shared memory (lock, etc.) here. Perhaps for synchronization and interprocessor communication it is necessary to use shared files located on the server.

From a suitable atlassian api, I found com.atlassian.jira.util.Lock, which allows you to create a lock on a system file.

Do you have any examples using this class or any other ideas how to get around this problem?

Thanks for the help :)

0 answers

Comments for this post are closed

Community moderators have prevented the ability to post new answers.