GIT - ошибка, полученная во время запросов клонирования и извлечения

Я получаю следующую ошибку после попытки клонировать проект в мою рабочую область:

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

Я использую интерфейс RhodeCode для управления нашими хранилищами кода. У меня нет прямого доступа к серверу, на котором работает RhodeCode, но я работаю, чтобы посмотреть журналы ошибок. Я буду обновлять информацию журнала ошибок, если смогу добраться до нее.

Я прочитал несколько статей, которые указывают, что эта ошибка может быть вызвана размером репозитория, который я пытаюсь клонировать. Я могу успешно клонировать проект размером 139,2 МБ. Размер проектов, в которых не выполняется операция клонирования, составляет 199 МБ.

Кто-нибудь думает, что размер моего проекта вызывает ошибку, которую я вижу?

У меня был администратор, который смотрел на использование памяти сервера, когда я выполнял операцию клонирования (он контролировал сервер, на котором работает RhodeCode), и он сказал мне, что использование системной памяти не было проблемой.

Не уверен, как действовать в этой точке. Спасибо за любые предложения!

Версия RhodeCode: 2.2.4 Версия Git: 1.8.4

Изменить с дополнительной информацией:

Я смог (наконец) получить на сервере, который содержит установку RhodeCode. Я хотел бы найти журналы ошибок, и я не уверен, где искать. Вот что я вижу:

  • C: / Program Files / RhodeCode
  • C: / Гит
  • C: / GitStack
  • C: / rhodecode-224

    Как вы можете сказать, мы работаем на Windows Server. Я не уверен, в чем разница между Git и GitStack. Я предполагаю, что rhodecode-224 является установочным пакетом.

22.08.2016 Редактировать: я смог узнать, как посмотреть на результаты работы сервера 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

Итак, теперь, по крайней мере, я знаю, что имею дело с каким-то ограничением пространства.

Я проверил сервер, на котором выполняется наша установка RhodeCode во время сбоя операции Clone. Сервер имеет 8 Гб памяти. Во время операции клонирования я всегда вижу доступность 3Gig пространства.

Мы попробовали следующую модификацию в файле "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

Мы удвоили MaxRequestBodySize, надеясь, что это будет иметь значение, и это не так.

Существуют ли другие ограничения по размеру, характерные для сервера RhodeCode? Что-нибудь еще, что я могу посмотреть или изменить во время операции клонирования?

Мы изучаем, что потребуется для обновления до версии 3.8, но я хотел бы упомянуть, что мы нашли и попробовали.

Спасибо.

1 ответ

Дмитрий из RhodeCode уже здесь! Обновление до RhodeCode 4.3 (последняя версия на данный момент) может решить эту проблему, поскольку за последние два года мы внесли много улучшений производительности.

RhodeCode CE является бесплатным и открытым исходным кодом. Недостатком является то, что 4.3 не поддерживает Windows из коробки, поэтому вам может потребоваться выполнить новую установку и настроить ее для работы в качестве виртуальной машины.

RhodeCode EE лицензируется для каждого пользователя, однако у него уже есть предварительно настроенный образ виртуальной машины для работы в Windows. Вы также получите значительное повышение производительности.

Другие вопросы по тегам