Svn

svn diff 約 25 分鐘後返回 E175009

  • July 31, 2017

我正在嘗試將 SVN 儲存庫映射到 Fisheye/Crucible 以與程式碼審查功能一起使用。我遇到了 Fisheye 執行的命令之一的問題,但問題的根源似乎源於 SVN 伺服器。正在使用 VisualSVN Server 3.6.1,64 位。

svn diff --summarize -r 6427:6428 http://file2/svn/REPO/@6428

我在 SVN 伺服器上本地測試了相同的命令,但大約 25 分鐘後,文本流被中斷

svn: E175009: The XML response contains invalid XML
svn: E130003: Malformed XML: no element found

我發現的此錯誤範例似乎表明在命令中輸入的 URL 不正確,但這似乎不適用於我的情況,因為最初大約有 110MB 的數據下降。

在命令執行時監視事件查看器會產生 3 個錯誤,但不會導致命令停止執行。隨後的重新執行每次都會導致相同的 3 個錯誤。

Provider encountered an error while streaming a REPORT response.  [500, #0]
A failure occurred while driving the update report editor  [500, #106]
Unknown error  [500, #106]

SVN 對 repo 進行驗證沒有報告任何問題。

作為一種解決方法,我可以將 Fisheye 設置為在問題修訂後開始索引,但這會導致在該修訂之前最後修改的文件在審查中缺少差異數據,因此並不理想。

更新 1 有問題的修訂似乎是圍繞 repo 佈局方式的重新設計,我讀到這可能會在使用 3rd 方工具時引起問題。我還注意到在 1.9.5 之前的 SVN 中有一個錯誤,它允許在 xml 中無效的字元,所以我正在嘗試一些版本降級,看看是否有幫助。

更新 2 這些似乎是由在執行上述重新設計 repo 佈局時創建的特定分支引起的。更多研究表明我可以使用 svndumpfilter 刪除不需要的項目。我沒有找到任何關於如何刪除分支的資訊,只是特定的文件。我還嘗試將 repo 導出和導入到新安裝,但這並沒有解決問題。

一般來說,SVN的管理很容易,但我不知道如何解決這個問題。任何建議將不勝感激。謝謝!

我可以通過 svn:// 協議配置儲存庫訪問來避免這個錯誤。雖然 VisualSVN 不直接支持這一點,但所需的 svnserve.exe 已經存在,並且被配置為指向儲存庫副本的新服務。

sc create svncustom binpath= "\"C:\Program Files (x86)\VisualSVN Server\bin\svnserve.exe\" --service -r F:\RepositoriesCopy" displayname= "Subversion Workaround Server" depend= Tcpip start= auto

這似乎不是一個安全的解決方案,但它消除了我遇到的硬塊錯誤。

引用自:https://serverfault.com/questions/862024