It turned out that if you modify any file domain reload is triggered that shuts down all threads.
More about it at this link
Evan Hoff [14/May/08 03:49 PM]
I'm not sure if this is the cause for CC.NET, but I've seen this same behavior in other 2.0 ASP.NET apps.
Here's the skinny:
In 2.0, ASP.NET changed so that any file changes (above and beyond web.config, global.asax, and /bin) will trigger an AppDomain reload.
During the reload, any thread which does not cleanly shut down within a specified timeout period will get aborted.
Reading your description above, I would guess you have several ASP.NET threads working on sockets. A filesystem change is triggering an AppDomain refresh and those threads aren't restarting within the timeframe expected by ASP.NET. As a result, the threads get aborted (causing the logs you are seeing). When the threads are aborted, your socket code doesn't restart, and your client receives a message about the server being too busy.
Or at least that's a theory you can try exploring. You can google the behavior change to read about it, but there's not a way to turn the behavior off (unfortunately).
Evan
[ Show » ]
Evan Hoff [14/May/08 03:49 PM] I'm not sure if this is the cause for CC.NET, but I've seen this same behavior in other 2.0 ASP.NET apps. Here's the skinny: In 2.0, ASP.NET changed so that any file changes (above and beyond web.config, global.asax, and /bin) will trigger an AppDomain reload. During the reload, any thread which does not cleanly shut down within a specified timeout period will get aborted. Reading your description above, I would guess you have several ASP.NET threads working on sockets. A filesystem change is triggering an AppDomain refresh and those threads aren't restarting within the timeframe expected by ASP.NET. As a result, the threads get aborted (causing the logs you are seeing). When the threads are aborted, your socket code doesn't restart, and your client receives a message about the server being too busy. Or at least that's a theory you can try exploring. You can google the behavior change to read about it, but there's not a way to turn the behavior off (unfortunately). Evan