I began troubleshooting the issue by removing all the steps in the workflow, then adding them back in, one at a time, executing the workflow after each step was added back in. It was then that I realized that the issue involved setting permissions with multiple, nested groups.
The work flow consisted of three steps:
- Strip permissions from the document for all users
- Grant Contribute permissions to the document creator
- Grant Contribute permissions to the "Document Reviewers" group
If I created and submitted a document, the workflow failed. If a different user created the document, it worked fine. It was then that I realized that, since I was a member of the "Document Reviewers" group, as well as the creator of the document, it was trying to grant access to me after I had already been granted access.
Once I removed myself from the group, it worked fine. The workflow would also execute fine when a user who was not a member of the group submitted a document.
If you experience errors with workflows that assign or strip user permissions, look into the composition of the group. That may hold the key to your errors.