2011-12-13 102 views
1

我剛將一些Subversion版本庫從Windows 2003服務器遷移到Windows 2008服務器,並在此過程中將Subversion從1.5升級到1.7。結帳並提交作品,但是當用戶試圖鎖定的文件,他們得到這個消息:Subversion:鎖定文件失敗

Error: LOCK of '/SVN/TempRepo_OnlyToPlayWith/Documents/Test.docx': Could not read
Error: status line: An existing connection was forcibly closed by the remote host.
Error: (https://subversion.mysite.com)

(其中https://subversion.mysite.com就是顛覆託管網站),我一直在尋找

是什麼問題是,沒有運氣。

幫我,StackOverflow - 你是我唯一的希望。

編輯:

一些更多的調查發現,當我不去通過HTTPS,但在服務器上使用的文件直接使用龜回購:///,我收到以下錯誤信息:

Error: Can't open file 'D:\SVNRepositories\TempRepo_OnlyToPlayWith\db\write-lock':
Error: Access is denied.

但是,使用具有管理員權限的控制檯使用命令行svn工具沒有問題。

難道這真的只是一個讀/寫權限問題?如果是這樣,爲什麼結賬/提交/等。工作,但不鎖定存儲庫中的文件?

更多編輯:

顯然,調查事件日誌後,似乎httpd.exe不斷崩潰,指責mod_dav.so:

Faulting application name: httpd.exe, version: 2.2.21.0, time stamp: 0x4e6a3015 Faulting module name: mod_dav.so, version: 2.2.21.0, time stamp: 0x4e6a3023

回答

0

的問題是,這是否與問題存儲庫或您的Apache http實例。你改變了我們兩件事:存儲庫的版本和操作系統的版本。

讓我們嘗試消除Apache作爲問題。關閉Apache http並使用svnserve命令(它應該與Subversion服務器一起提供)啓動存儲庫。您需要更新存儲庫的conf\svnserve.conf文件以啓用passwd文件,然後更新passwd以包含一些用戶名和密碼。

做一個乾淨的結帳,然後嘗試做一個鎖。你有同樣的錯誤嗎?如果是這樣,則存儲庫存在問題。從1.5升級到1.7是版本庫結構的一個重大變化。你從前做過轉儲和加載嗎?你做了一個svnadmin upgrade

如果鎖定問題消失,那麼問題在於您的Apache http配置。你使用的是什麼類型的Apache http安裝?這是你自己編譯的東西,還是像CollabNet的Subversion Edge - 一種預編譯的軟件包?

0

它已經解決。問題在於我安裝了CollabNet的Subversion服務器1.7.1(其中包含一個Apache服務器),然後安裝了更新版本的Apache,然後將一些與CollabNet的Apache文件夾相關的SVN相關文件複製到獨立的Apache服務器。

安裝CollabNet Subversion服務器1.7.2並使用它附帶的Apache服務器後,一切似乎都正常。