I know Orchard uses an ambient transaction for all work you perform on the data in the system. This is fine for most situations, but I've run into a situation where I don't want this to happen.
I'm trying to import a huge taxonomy into the taxonomy module using a custom command I've made for this. It contains 10k keywords in a text file in a hierarchy that is about 8 levels deep at some points.
When I try to import this set of keywords, it fails at about 10% of the list, because of a transaction time out. I can ofcourse try to increase the transaction timeout, but this isn't the best way to approach the situation if you ask me.
I'd like to have one transaction for each term I'm importing. The reason is simple, if it fails half way I can always go back and retry the operation. The command is built in such a way that I check if the term exists and skip importing it if it does. So
retrying is no issue.
I've found a way to supress the ambient transaction,. but no proper way to create a separate transaction per item. Is this possible in Orchard?