使用Apache的Subversion – 获取locking时发生崩溃

Apache 2.2.16.0

Windows 2008 64位

mod_dav_svn从2010-06-30开始

libapr-1.dll版本1.4.2


整个configuration几个月,并完美工作。 提交/更新/结帐/其他日常用途正在完美工作。

今天,用户试图对文件进行locking。 Apache正在崩溃。

以下是来自事件日志的条目

Error 2010-12-16 11:30:41 Application Error 1000 (100) Log Name: Application Source: Application Error Date: 2010-12-16 11:30:41 Event ID: 1000 Task Category: (100) Level: Error Keywords: Classic User: N/A Computer: <removed for this post> Description: Faulting application name: httpd.exe, version: 2.2.16.0, time stamp: 0x4c5340fc Faulting module name: libapr-1.dll, version: 1.4.2.0, time stamp: 0x4c5340df Exception code: 0xc0000005 Fault offset: 0x000111e3 Faulting process id: 0x1ef4 Faulting application start time: 0x01cb9d3dfa277b13 Faulting application path: C:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin\httpd.exe Faulting module path: C:\Program Files (x86)\Apache Software Foundation\Apache2.2\bin\libapr-1.dll Report Id: d206b446-0931-11e0-aaeb-1cc1de258998 

这是apache的error.log文件的一部分

 [Thu Dec 16 11:23:41 2010] [info] [client 192.168.1.141] Access granted: '<myusername>' LOCK svn:/<my_locked_file> [Thu Dec 16 11:23:41 2010] [info] [client 192.168.1.141] Access granted: '<myusername>' GET svn:/<my_locked_file> [Thu Dec 16 11:23:41 2010] [notice] Parent: child process exited with status 255 -- Restarting. [Thu Dec 16 11:23:41 2010] [notice] Apache/2.2.16 (Win32) DAV/2 mod_auth_sspi/1.0.4 SVN/1.6.12 configured -- resuming normal operations [Thu Dec 16 11:23:41 2010] [notice] Server built: Jul 30 2010 16:15:37 [Thu Dec 16 11:23:41 2010] [notice] Parent: Created child process 6744 [Thu Dec 16 11:23:41 2010] [debug] mpm_winnt.c(487): Parent: Sent the scoreboard to the child [Thu Dec 16 11:23:41 2010] [notice] Child 6744: Child process is running [Thu Dec 16 11:23:41 2010] [debug] mpm_winnt.c(408): Child 6744: Retrieved our scoreboard from the parent. [Thu Dec 16 11:23:41 2010] [info] Parent: Duplicating socket 376 and sending it to child process 6744 [Thu Dec 16 11:23:41 2010] [debug] mpm_winnt.c(605): Parent: Sent 1 listeners to child 6744 [Thu Dec 16 11:23:41 2010] [debug] mpm_winnt.c(564): Child 6744: retrieved 1 listeners from parent [Thu Dec 16 11:23:41 2010] [debug] proxy_util.c(1818): proxy: grabbed scoreboard slot 0 in child 6744 for worker proxy:reverse [Thu Dec 16 11:23:41 2010] [debug] proxy_util.c(1837): proxy: worker proxy:reverse already initialized [Thu Dec 16 11:23:41 2010] [debug] proxy_util.c(1914): proxy: initialized worker 0 in child 6744 for (*) min=0 max=64 smax=64 [Thu Dec 16 11:23:41 2010] [notice] Child 6744: Acquired the start mutex. [Thu Dec 16 11:23:41 2010] [notice] Child 6744: Starting 64 worker threads. [Thu Dec 16 11:23:41 2010] [notice] Child 6744: Starting thread to listen on port 80. 

我看不出我该怎么做来诊断问题或解决问题。

任何帮助?

谢谢

好吧,我想我现在有足够的信息来制定答案。

我们现在知道的:SVNServe的工作,Apache不,假设本地/文件的作品。 TortoiseSVN使用Apache远程发生崩溃,但不是SVNServe。

你是否通过Apache远程尝试了命令行? 也许甚至在你试过TortoiseSVN导致Apache崩溃的同一台机器上?

现在,它可能只是TortoiseSVN的错误版本,或者TortoiseSVN中的SVN客户端与服务器不匹配,即1.6.x到1.6.x,而不是1.5.x客户端到1.6.x服务器。 但是,如果不是,那么我的下一个嫌疑犯就是你正在使用的Apache库。

你表示你已经从第三方获得安装,但没有说明哪一个。 看看他们是否有更新的版本。 如果你使用VisualSVN,那很好。 如果您仍然遇到问题,请尝试切换供应商。 我已经使用CollabNet的 Subversion版本了。 他们现在有新的包装,包括ViewVC和GUIpipe理工具。 他们确实为他们的构build提供支持。