44
Vote

REPORT of '/svn/!svn/vcc/default': 200 OK (https://xxx.svn.codeplex.com)

description

originally reported by fkiller on CodePlex issue tracker.


I got the same problem as issue #20891.

I get this error any time I update on all of my projects.
Creating a new, fresh directory and checking out fixes it, but only for a short period of time.
If any changes are made are I try and 'svn up' the error returns and I must delete and check out a new copy.
NB I can still commit, just can't update.

file attachments

comments

smithkl42 wrote Oct 13, 2009 at 7:53 AM

I'm getting this on a bog-standard Tortoise SVN checkout of the FacebookDevelopmentToolkit (https://facebooktoolkit.svn.codeplex.com/svn/). It doesn't grab any files, just returns this error message.

neojudgment wrote Jan 2, 2010 at 9:05 PM

It's always the same problem (200 OK error) !!!!

smithkl42 wrote Apr 8, 2010 at 3:45 PM

I'm still getting this error on a checkout of the Facebook Development Toolkit, into a fresh directory. It'd be nice to get it fixed.

simnova wrote Apr 23, 2010 at 2:36 PM

Same issue with the Facebook Development Toolkit

beeker wrote May 12, 2010 at 9:18 PM

Same error here for when trying to checkout the Facebook Development Toolkit

asuslin wrote May 19, 2010 at 5:32 PM

Windows 7 + Tortoise SVN = the same result : 'can't checkout any revision'

codegecko wrote Jul 4, 2010 at 11:04 AM

Same on Facebook Development Toolkit and on other projects too.

Minimalist360 wrote Sep 4, 2010 at 12:56 AM

this is still happening

syska wrote May 8, 2011 at 2:00 PM

TFS 2010 & SvnBridge version 6 ... same problem continues on some Projects.

No idea whats happening.

Veux wrote Jun 28, 2011 at 8:33 AM

TFS2010, SVNBridge 6, everthing went fine until we made a branch and now we get the 200 OK problem after an svn update

georgep1245 wrote Aug 24, 2011 at 5:27 PM

I've been getting this error since we branched our project. I looked at the SvnBridge error logs and I'm getting "Unsupported change type Merge." I looked into the source where this was happening. On update, it lists all the changes done to the files and creates the update based on that. When it meets a merge operation along the way, it seems to choke because it does not know how to handle that. Attaching the log file.

DHilsbosPAI wrote Sep 21, 2011 at 5:12 PM

This error appears to be coming from the CalculateChangeBetweenVersions method in UpdateDiffCalculator.cs. Specifically inside the for loop, the type of the change ( a ChangeType enumeration) is tested, via helper methods, against multiple different ChangeTypes.
This method appears to classify all changes into Add, Delete, Rename, or Edit, 4 ChangeTypes aren't covered: None (1), Encoding (8), Merge (256), Lock (512).
Shouldn't a Merge operation be treated as an Edit?
If so, you could add Merge to the IsEditOperation helper method.

EFVB wrote Oct 10, 2011 at 2:45 PM

Erasing local files and get last version work for our team, but it's troublesome to everyone do it every now and then.

GoatCheez wrote Nov 17, 2011 at 6:59 PM

This is a major issue for my team. We need to be able to perform an update. The workaround is too much of a burden for our team members.

cmerat wrote Jun 12, 2013 at 9:47 PM

Adding || (change.ChangeType & ChangeType.Merge) == ChangeType.Merge to IsEditOperation in UpdateDiffCalculator appears to have fixed the issue for us.

BadBiki wrote Oct 2, 2013 at 4:01 AM

Just found the same code :)

Raise a bug for it?

BadBiki wrote Oct 2, 2013 at 4:04 AM

lol this is the issue :) damn google.
        private static bool IsEditOperation(SourceItemChange change)
        {
            return (change.ChangeType & ChangeType.Edit) == ChangeType.Edit;
        }
to
        private static bool IsEditOperation(SourceItemChange change)
        {
            return ((change.ChangeType & ChangeType.Edit) == ChangeType.Edit) ||
                   ((change.ChangeType & ChangeType.Merge) == ChangeType.Merge);
        }
UpdateDiffCalculator.cs

BadBiki wrote Oct 2, 2013 at 4:12 AM

FYI this is the trace back.
Exception:
System.NotSupportedException: Unsupported change type Merge
at SvnBridge.SourceControl.UpdateDiffCalculator.CalculateChangeBetweenVersions(String checkoutRootPath, String changePath, Int32 changeVersion, FolderMetaData root, Int32 sourceVersion, Int32 targetVersion)
at SvnBridge.SourceControl.UpdateDiffCalculator.CalculateDiff(String checkoutRootPath, Int32 versionTo, Int32 versionFrom, FolderMetaData checkoutRoot, UpdateReportData updateReportData)
at SvnBridge.SourceControl.TFSSourceControlProvider.GetChangedItems(String path, Int32 versionFrom, Int32 versionTo, UpdateReportData reportData)
at SvnBridge.Proxies.RemotingInvocation.Proceed()
at SvnBridge.Proxies.RemotingInvocation.Proceed()
at SvnBridge.Proxies.RetryOnExceptionsInterceptor`1.Invoke(IInvocation invocation)
at SvnBridge.Proxies.RemotingInvocation.Proceed()
at SvnBridge.Proxies.ProxyFactory.RemotingProxy.Invoke(IMessage msg)
at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
at SvnBridge.SourceControl.TFSSourceControlProvider.GetChangedItems(String path, Int32 versionFrom, Int32 versionTo, UpdateReportData reportData)
at SvnBridge.Handlers.ReportHandler.GetMetadataForUpdate(IHttpRequest request, UpdateReportData updatereport, TFSSourceControlProvider sourceControlProvider, Int32& targetRevision)
at SvnBridge.Handlers.ReportHandler.Handle(IHttpContext context, TFSSourceControlProvider sourceControlProvider)
at SvnBridge.Net.HttpContextDispatcher.Dispatch(IHttpContext connection)
at SvnBridgeServer.SvnBridgeHttpHandler.ProcessRequest(HttpContext context)