Version : FIM 2010 R2 SP1 (4.1.3508)
Hi,
we're having trouble with a SQL deadlock occurring (postprocessingerror) when attempting to delete some identities from the FIM portal using the standard "ExpirationWorkflow". We have a temporal based set which works based on a calculated deletion date being in the past (so once the deletion date is in the past, the identity falls into a set which triggers the "out of the box" expiration workflow).
This works for the majority of identities but a small percentage intermittently fail with a SQL deadlock and I think this is because I can see the portal is attempting to run more than one workflow against the object when it is being deleted.
For example for identities that have been successfully deleted it appears that the "Applied Policy" is listing a transition out workflow at the same time as the deletion is taking place. I'm guessing that this is causing an update AND a deletion against the same identity in quick succession which may be the root cause of the deadlock.
I can't however work out why the transition out workflow is being triggered, the transition set is a criteria based set based on two boolean attributes being set to "True" but neither of them are being changed at the time of deletion. I'm wondering whether the deletion itself is being interpreted by the FIM service as being "removed" from the set.
Does anyone know of a way of preventing the "update" workflow from being triggered at the same time as the deletion of the identity ?