2010-06-06 65 views
0

我想服务与Apache的merurial存储库,当我试图推到回购我看到这在Apache的error.log。在客户端,我得到一个500错误。DeprecationWarning当推到Mercurial回购

我该如何解决这个问题?

[Sun Jun 06 14:43:25 2010] [error] [client 192.168.1.8] /var/lib/python-support/python2.6/mercurial/hgweb/common.py:24: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 
[Sun Jun 06 14:43:25 2010] [error] [client 192.168.1.8] self.message = message 
[Sun Jun 06 14:43:25 2010] [error] [client 192.168.1.8] /var/lib/python-support/python2.6/mercurial/hgweb/hgweb_mod.py:104: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 
[Sun Jun 06 14:43:25 2010] [error] [client 192.168.1.8] if not inst.message: 
[Sun Jun 06 14:43:25 2010] [error] [client 192.168.1.8] /var/lib/python-support/python2.6/mercurial/hgweb/hgweb_mod.py:106: DeprecationWarning: BaseException.message has been deprecated as of Python 2.6 
[Sun Jun 06 14:43:25 2010] [error] [client 192.168.1.8] return '0\\n%s\\n' % inst.message, 

回答

0

弃用警告是一种红鲱鱼。它只是让你知道服务器代码以最终不受支持的方式访问python异常。你真正想要发现的是什么例外是首先提出的。 (有没有与500错误沿着一条错误消息?)

+0

不,这是我在我的控制台中看到: 推到http://hg.corp.localproject.com/hgwebdir.cgi/localproject 搜索更改 中止:HTTP错误500:内部服务器错误 – 2010-06-06 20:03:24

+0

在弃用警告后,服务器日志中没有其他内容了吗?它看起来像试图返回一个错误代码和消息,我希望这将显示在服务器输出中(因此也是客户端输出)。在这种情况下,我建议通过使用wireshark嗅探服务器响应或临时编辑hgweb_mod.py第106行并在返回语句前插入'raise inst#'(并在再次尝试时观察服务器日志)来发现异常消息。 – 2010-06-06 20:10:14

+0

如果一切都失败了,Mercurial邮件列表中的某个人之前可能看到过这个问题。 http://selenic.com/mailman/listinfo/mercurial – 2010-06-06 20:11:15