is it possible to put workflow post functions in a transaction ?

Robert Conde October 13, 2017
Consider, for example, you have a workflow post function which runs on a transition. The function might make many changes. Is there a way to rollback all changes if any errors occur along the way?

1 answer

0 votes
Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
October 13, 2017

No.  There's no way Jira can know what a post-function might do, so it can't roll-back anything.

Robert Conde October 13, 2017

If it’s not possible that’s one thing..but Jira is backed by a database...and databases can be transactional...so theoretically it should be possible without Jira knowing the details of the post functions.

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
October 13, 2017

In theory, yes.  In reality, no.

Jira is not really backed by a database.  It uses a database as a data store for convenience, avoiding writing its own data storage mechanisms and to take advantage of some database functions that aren't particularly data related.

To make it transactional, you'd need to add code to every place where Jira might write to its data store.  That's a massive re-engineering project, and Atlassian sees that as pointless.  (I don't, but I don't care about the cost or time, I just want more, better, functions.  But I've got a massive list of those above making it transactional too)

Robert Conde October 14, 2017

Fair enough...thanks for the clarification!

Robert Conde October 16, 2017

What about this?

https://docs.atlassian.com/jira/7.0.6/com/atlassian/jira/transaction/package-summary.html

 

Are you sure that Jira isn't doing a transaction which can be rolled back by throwing an exception?

 

That's probably how validators work, no?

Suggest an answer

Log in or Sign up to answer