I have a question regarding the rollback mechanism in CRM 2011. I know that a synchronous plugin will rollback any changes it has performed if an error is thrown. But what if this plugin triggers another plugin during it's execution.
Consider the following plugins:
- Plugin A: Triggers on pre-UPDATE of Task entity
- Plugin B: Triggers on pre-UPDATE of Case(incident) entity
Scenario would be like this:
- I update a case and Plugin B get's triggered.
- Fields in the case are modified
- One of the Tasks associated with the case is also updated with some information.
- Plugin A is triggered
- Fields related to the task are modified
- Some other operations on the case record
- Plugin B throws exception
My question is, would the operations performed in Plugin A get rolled back as well?
Thanks and Regards, Paul