cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Failed to commit workflow on "Commit Pending Changes"

We are currently facing an issue when we try to set item permissions (single users, SP Groups) on an item in a list with about 7500 items. This error occurs 2-3 times daily on our production System (SP2013, Nintex 3.0.8.0. 2 App, 2 WFE ), on our Test System (same configuration) we don't have such errors. A specialty in our environment is our Active Directory with dozens of Trusts to other inhouse AD's.

 

This is an overview of the complete WF, Size 160kb:

 

 

This is the Error message from the ULS:

 

Nintex.Workflow.NWActionExecutionException: Failed to commit workflow.

---> System.Workflow.Runtime.Hosting.PersistenceException: The transaction has aborted.

---> System.Transactions.TransactionAbortedException: The transaction has aborted.

---> System.TimeoutException: Transaction Timeout   

--- End of inner exception stack trace

---     at System.Transactions.TransactionStateAborted.CreateAbortingClone(InternalTransaction tx)   

at System.Transactions.DependentTransaction..ctor(IsolationLevel isoLevel, InternalTransaction internalTransaction, Boolean blocking)   

at System.Transactions.Transaction.DependentClone(DependentCloneOption cloneOption)   

at System.Transactions.TransactionScope.SetCurrent(Transaction newCurrent)   

at System.Transactions.TransactionScope.PushScope()   

at System.Transactions.TransactionScope..ctor(TransactionScopeOption scopeOption, TransactionScopeAsyncFlowOption asyncFlowOption)   

at Microsoft.SharePoint.Workflow.SPWinOePersistenceService.Commit(Transaction transaction, ICollection items)   

at System.Workflow.Runtime.WorkBatch.PendingWorkCollection.Commit(Transaction transaction)   

at System.Workflow.Runtime.WorkBatch.Commit(Transaction transaction)   

at System.Workflow.Runtime.Hosting.WorkflowCommitWorkBatchService.CommitWorkBatch(CommitWorkBatchCallback commitWorkBatchCallback)   

at System.Workflow.Runtime.Hosting.DefaultWorkflowCommitWorkBatchService.CommitWorkBatch(CommitWorkBatchCallback commitWorkBatchCallback)   

at System.Workflow.Runtime.WorkflowExecutor.CommitTransaction(Activity activityContext)   

at System.Workflow.Runtime.WorkflowExecutor.Persist(Activity dynamicActivity, Boolean unlock, Boolean needsCompensation)   

--- End of inner exception stack trace

 

Some hints are very much appreciated.

 

Thanks.

 

Daniel

Labels: (1)
0 Kudos
Reply
1 Reply
Workflow Hero

Re: Failed to commit workflow on "Commit Pending Changes"

The Set permissions operation is rather costly as it must recalculate all relevant ACLs in the database. If you have numerous granular permissions in this list, and on other lists and libraries in the same database, that might cause the calculation to take longer than the configured timeout allows. I'm not sure if the number of AD trusts plays a significant role here, but it might. The Log to SQL Database action set shown in the picture also could take up some of the precious time between commits.

0 Kudos
Accept as Solution Reply