Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,367,487
Community Members
 
Community Events
168
Community Groups

What else can I do to prevent duplicates?

I have a Script Listener that "hears" Created and Updated events and creates either 1 or 2 sub-tasks depending on various conditions. The task creation is fine, but at least twice a week, the script creates duplicate issues.

I think this is happening because we have an integration to Salesforce (Go2Group CRM Plugin) which can cause an issue to be updated 2 times in a second, and therefore multiple instances of the listener may be running at once.

In the log, I can see that we are sometimes going straight from detecting 0 sub-tasks to detecting 4, so my guess is that sometimes, I'm trying to detect sub-tasks which exist but have not been indexed yet.

I tried calling the indexer in the script as I created each task, but saw no improvement in detection rate, so I removed that. Also tried re-declaring the sub-task collection later in the script, in case a few extra milliseconds might help, which really didn't.

What can I do to decrease the incidence of duplicates? 

Would it make sense to focus on indexer performance, or add something else to the script, or just sleep for a second or two before trying to check for tasks?

Here's how I'm looking for duplicates in the script, and thanks for any ideas you have!

...

Collection subTasks = parentIssue.getSubTaskObjects()
if (!subTasks.find{it.getSummary().contains "Incident"}) {
Blah blah }

 

1 answer

1 accepted

0 votes
Answer accepted

Hi April,

As blunt and simple it might sound but at least for testing purposes have you tried adding a post function to you sub task "Create" transition, which would fire a custom event. And then reconfigure your listener to listen to that custom event. If you place this post function LAST on your "Create" transition, then I think it should help you at least diagnose where your duplicates appear and best case scenario use this approach to get rid of duplicate listener launches all together.

Ivan, I think that helped!

After having that in place a few weeks now, duplicates are only happening when the other add-on fires 3+ updates in the same second, which is thankfully rare, and even then, I only get one dupe. 

Probably the only further improvement would be to improve indexing speed.

Thanks for the great idea!

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events