简体   繁体   English

GIT - 在克隆和拉取请求期间收到错误

[英]GIT - Error received during Clone and Pull requests

I receive the following error after attempting to Clone a project into my workspace: 尝试将项目克隆到我的工作区后,我收到以下错误:

Cloning into '<MyProjectName>'...
error: RPC failed; result=22, HTTP code = 500
fatal: The remote end hung up unexpectedly

I am using the RhodeCode front end to manage our code repositories. 我正在使用RhodeCode前端来管理我们的代码存储库。 I don't have direct access to the server that RhodeCode runs on, but I am working to get a look at the error logs. 我没有直接访问运行RhodeCode的服务器,但我正在努力查看错误日志。 I will update with error log information if I can get to it. 如果我能够访问它,我将更新错误日志信息。

I've read a few articles that indicate that this error might be caused by the size of the repository that I am attempting to Clone. 我已经阅读了一些文章,表明这个错误可能是由我试图克隆的存储库的大小引起的。 I am able to successfully Clone a project that is 139.2MB in size. 我能够成功克隆一个139.2MB的项目。 The size of the projects that fails the Clone operation are 199MB in size. 克隆操作失败的项目大小为199MB。

Does anyone think that the size of my project is causing the error I am seeing? 有谁认为我的项目的大小导致我看到的错误?

I did have an admin look at the server memory usage while I performed the Clone operation (he monitored the server that RhodeCode runs on) and he told me that the system memory usage wasn't the problem. 在我执行克隆操作时(他监视运行RhodeCode的服务器),我确实有管理员查看服务器内存使用情况,他告诉我系统内存使用不是问题。

Not sure how to proceed at this point. 不知道如何继续这一点。 Thanks for any suggestions! 谢谢你的任何建议!

RhodeCode Version: 2.2.4 Git Version: 1.8.4 RhodeCode版本:2.2.4 Git版本:1.8.4

Edit with additional information: 使用其他信息进行编辑

I was able to (finally) get on the server that contains the RhodeCode installation. 我能够(最终)进入包含RhodeCode安装的服务器。 I'd like to find the error logs and I'm not sure where to look. 我想找到错误日志,我不知道在哪里看。 This is what I see: 这就是我所看到的:

  • C:/Program Files/RhodeCode C:/ Program Files / RhodeCode
  • C:/Git C:/混帐
  • C:/GitStack C:/ GitStack
  • C:/rhodecode-224 C:/ rhodecode-224

    As you can tell, we are running on a Windows Server. 如您所知,我们正在运行Windows Server。 I'm not sure what the difference is between Git and GitStack. 我不确定Git和GitStack之间有什么区别。 I am assuming that the rhodecode-224 is an installation package. 我假设rhodecode-224是一个安装包。

08/22/2016 Edit: I was able to learn how to look at the RhodeCode server's output and I gathered the following bit of information... 2016年8月22日编辑:我能够学习如何查看RhodeCode服务器的输出,并收集了以下信息......

2016-08-22 11:26:56.733 ERROR [waitress] Exception when serving /<MyProjectName>/git-upload-pack

Traceback (most recent call last):
  File "C:\Program Files (x86)\RhodeCode Enterprise\system\Lib\site-packages\waitress\channel.py", line 332, in service task.service()
  File "C:\Program Files (x86)\RhodeCode Enterprise\system\Lib\site-packages\waitress\task.py", line 173, in service self.execute()
  File "C:\Program Files (x86)\RhodeCode Enterprise\system\Lib\site-packages\waitress\task.py", line 388, in execute app_iter = self.channel.server.application(env, start_response)
  File "C:\Program Files (x86)\RhodeCode Enterprise\system\Lib\site-packages\paste\gzipper.py", line 40, in __call__ response.finish_response(app_iter)
  File "C:\Program Files (x86)\RhodeCode Enterprise\system\Lib\site-packages\paste\gzipper.py", line 85, in finish_response output.write(s)
  File "C:\Python27\lib\gzip.py", line 236, in write self.fileobj.write( self.compress.compress(data) )

  MemoryError: out of memory

So, now, at least I know that I am dealing with some type of space limitation. 那么,现在,至少我知道我正在处理某种类型的空间限制。

I have checked the server that our RhodeCode installation runs on during the Clone operation that fails. 我已经检查了服务器,我们的RhodeCode安装在克隆操作失败时运行。 The server has 8Gig of memory. 服务器有8Gig的内存。 During the Clone operation I always see 3Gig of space as being available. 在克隆操作期间,我总是看到3Gig的空间可用。

We tried the following modification in the 'production.ini' file: 我们在'production.ini'文件中尝试了以下修改:

## WAITRESS ##
use = egg:waitress#main
## number of worker threads
threads = 5
## MAX BODY SIZE 100GB = 107374182400  200GB = 214748364800
max_request_body_size =  214748364800 
## use poll instead of select, fixes fd limits, may not work on old
## windows systems.
#asyncore_use_poll = True
## COMMON ##
host = 0.0.0.0
port = 5000

We doubled the MaxRequestBodySize hoping this would make a difference and it didn't. 我们将MaxRequestBodySize加倍,希望这会产生影响而事实并非如此。

Are there other size restrictions in place that are specific to the RhodeCode server? 是否存在特定于RhodeCode服务器的其他大小限制? Anything else I can look at or modify during the Clone operation? 在克隆操作期间我可以查看或修改的任何其他内容?

We are looking into what it will take to upgrade to version 3.8, but I wanted to mention what we found and tried. 我们正在研究升级到3.8版本需要什么,但我想提一下我们发现并尝试过的内容。

Thank you. 谢谢。

Dmitry from RhodeCode is here! 来自RhodeCode的德米特里来了! Upgrading to RhodeCode 4.3 (the latest version at the moment) might solve the issue since we introduced many performance improvements over the last two years. 升级到RhodeCode 4.3(目前的最新版本)可能会解决这个问题,因为我们在过去两年中引入了许多性能改进。

RhodeCode CE is free and open source. RhodeCode CE是免费和开源的。 The drawback is that 4.3 doesn't support Windows out of the box, so you may need to do a fresh-install and configure it to run as a Virtual Machine. 缺点是4.3不支持开箱即用的Windows,因此您可能需要进行全新安装并将其配置为作为虚拟机运行。

RhodeCode EE is licensed per user, however it has an already pre-configured VM image to run on Windows. RhodeCode EE按用户许可,但是它已经预先配置了在Windows上运行的VM映像。 You'll get quite a performance boost too. 你也会获得相当大的性能提升。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM