03/09/2013 20:50:13.76 OWSTIMER.EXE (0x09F0) 0x20E0 SharePoint Foundation Legacy Workflow Infrastructure 75yn Unexpected Load Workflow Assembly: System.IO.FileNotFoundException: Could not load file or assembly 'My.Content.WF.ClientReview, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1f310f3d9eb1728b' or one of its dependencies. The system cannot find the file specified. File name: ''My.Content.WF.ClientReview, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1f310f3d9eb1728b' at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, S... 1746069c-9c8e-2075-8ca7-47e33a38cd91
So what was going on? My workflow only references SharePoint assemblies, and itself is indeed in the GAC. A closer look shows that this was thrown from OWSTIMER.EXE. So it's the timer job service. Apparently the Delay Activity relyies on the timer job service to fire. Just like w3wp.exe, it needs a restart to recognize newly changed assemblies in the GAC. Sure enough, I restarted the timer job service, started a new WF, and the Delay Activity fired successfully after coming out of its timeout.
No comments:
Post a Comment