Saving or selecting a task may cause a 503 error in the console and cause the Classic App Pool to stop/crash on the NS
Last Updated November 09, 2011
When you save, or select a task, you may have a long delay, then a 503 error saying the page is not available. Nothing in the console works after this. Further checking will reveal that the Classic App Pool has crashed/stopped in IIS. Restarting the App Pool allows you back into the console, until you select this specific task.
This is caused by a circular reference in a Task Job. You can quickly re-create this by creating a new Client job, and then adding an existing "task" and selecting the job you just created to be the first task. This is allowed at this time, and you will see if on the screen as running itself. As soon as you select Save though, the console crashes and you can no longer select that task.
The net effect is you have to remove the circular reference. There are several manual ways to do this, but all in SQL. One is to simply modify the state column for that version of the task to use a different task. Another way is to remove the reference and the versions.
The latter method has been somewhat automated by using the SQL below (cut/paste directly into SQL against the CMDB DB for this instance of SMP):
/* Begin SQL
1) run the query.
You should get 2 results, the second indicating a lack of a circular reference.
2) select the GUID (Parent or Child) from the appropriate matching result
of your error job and copy to the clipboard.
3) Paste the GUID over the "bad" guid of all 9999's below.
4) Re-run the query. That should do it. Check the task to ensure it's OK.
4a) To check your work, simply re-run the query again. You should get an
indication that the GUID no longer matches a circular reference.