The other day, I suddenly ran into an issue that my Sitecore site could not synchronize with my development environment. TDS kept popping up the error dialog saying that TDS’s web service was interrupted.
Then I found out that during synchronization, the context site was one of my sub-sites instead of the default site. And since I made a custom processor in the httpReqestBegin pipeline that redirected the sub-sites’ requests to another URL, TDS’s web services must be confused.
I contacted Hedgehog support team, and they were very helpful. I was told that TDS connects to Sitecore instance in any single site instance, so it is no guarantee that it uses the default site.
The solution is in my custom pipeline processor, I added one more check that if the request comes from /_Dev folder, the request will be ignored.
So if you are using TDS and having custom processors in the httpReqestBegin pipeline, besides checking the context item, item template, context database, etc, you might also need to add a check for TDS.