Контекст работы с ошибкой SVN: существующее соединение было принудительно закрыто удаленным хостом

Я создал SVN-репо на моем сервере сборки Debian Wheezy после этот учебник. svn --version дает 1.6.17.

К сожалению, я больше не могу совершать репо с моей машины Windows 7; он выходит из строя со следующим сообщением об ошибке:

Transmitting file data .svn: E730054: Commit failed (details follow):
svn: E730054: Error running context: An existing connection was forcibly closed
by the remote host.

У меня была эта ошибка как с TortoiseSVN, так и с клиент командной строки.

Это содержимое /var/log/apache2/access.log на сервере за время неудачной фиксации: access.log. В журнале ошибок нет записи за такое же время.

Я все еще могу проверить содержимое репо и svn info http://myurl/svn/myrepo работает также отлично.

Сервер Debian с репо запущен внутри виртуальной машины на Windows Server 2008 R2 (Hyper-V-Manager 6.1). Соединение с моей Windows-машиной на Windows Server устанавливается с помощью FortiClient 4.2.8.0307.

После того, как вчера я столкнулся с этой ошибкой, я очистил svn с сервера и снова настроил репо. Это заставило репо принять фиксацию в течение нескольких часов, пока не сработает с той же ошибкой.

В настоящее время завершается работа с TortoiseSVN, но с помощью клиент командной строки.

Что означает E730054 и как я могу исправить его навсегда?


Я повысил до Джесси тем временем, но ситуация не улучшилась. Commits with Tortoise перестает работать снова, что означает, что он зависает при действии "Отправка содержимого" около пяти минут, а затем печатает ошибку, которая в заголовке.

Выплаты по-прежнему работают без сбоев.

apache2 -v:
Версия сервера: Apache/2.4.9 (Debian)
Серверная сборка: 29 марта 2014 21:52:01

svn --version:
svn, версия 1.8.8 (r1568071)
скомпилировано 1 апреля 2014 года, 03:41:42 на i486-pc-Linux-GNU

Здесь thread, который обсуждает ошибку, но я не мог заключить решение своей проблемы из него.


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

Мое исправление

Проблема исчезла после использования svnserve вместо apache2. Этот учебник помог мне настроить его.

Ответ 1

Когда я читал о потоке, кажется, что некоторые проблемы в реализации WEBDAV на клиентском сайте приводят к сбою потока apache. У меня были другие проблемы с репозиториями до 1.8, и я решил большинство из них, выгрузив/перегрузив весь репозиторий в новый (использование " обновления svnadmin " недостаточно!). В репозиториях до 1.8 иногда есть "поврежденные/устаревшие" данные в файлах ревизий, которые игнорируются клиентами. Похоже, что это может привести к segfault.

Вы можете сбросить/перезагрузить свой репозиторий следующим образом:

svnadmin create newrepos
svnadmin dump oldrepos | svnadmin load newrepos

Обратите внимание, что для выполнения цикла обновления/перезагрузки может потребоваться огромное количество времени (примерно 1 ГБ/ч + - 50% в зависимости в основном от скорости диска).

Если у вас другое время, пожалуйста, опубликуйте свое время, я занимаюсь частным исследованием характеристик цикла дампа/перезагрузки.

Ответ 2

У меня возникла проблема с одним файлом при попытке проверить несколько файлов с помощью Tortoise SVN в Windows 7 x64. Не удалось выполнить несколько попыток зафиксировать файл с использованием различных версий Tortoise SVN и версии SVN с командной строкой.

В то время мой ноутбук использовал мое домашнее интернет-соединение интернет-провайдера. Когда я позже пошел на работу и попытался передать файл сбой из моей сети работодателей, файл был зафиксирован без проблем.

Я не знаю, почему так было, но если вы столкнулись с этой проблемой и найдете свой путь к этому ответу с помощью поискового запроса, вы можете попробовать еще раз - используя другое интернет-соединение. Хотя это не решение проблемы, это может обеспечить временную работу.

Ответ 3

Я получал эту ошибку.

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

Я решил эту проблему, переключив прокси-сервер на Cntlm, и он отлично работает. Я использую версию TortoiseSVN 1.9.3.

Ответ 4

Искал ту же ошибку. Моя проблема заключалась в антивирусе Avast, когда я поставил URL-адрес сервера svn в exclutions, проблема была решена.

Ответ 5

Я встретил эту проблему после того, как наш svn-сервер переместился с lan на internet. Наконец, я решаю эту проблему, меняя свой IP-адрес.

Например: от 192.168.0.60 до 192.168.0.71.

Версия SVN: TortoiseSVN 1.9.7, Build 27907 - 64 бит
Версия ОС: Windows 10, 1703

Ответ 6

У меня была эта проблема с большим коммитом (~ 500 файлов, 50 МБ) в базовой сети. Это работало, когда я разбивал файл на партии (например, выбирал файлы за раз). Похоже, что он боролся с одним большим файлом, который был повторен для нескольких папок.

Ответ 7

Я получаю эту ошибку.

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

Я использую версию TortoiseSVN 1.11. Я использую контрольно-пропускной пункт VPN, я просто перезапускаю VPN-соединение

Ответ 8

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

Ответ 9

Я тоже сталкивался с подобной проблемой. Подробности SVN: TortoiseSVN 1.12.0, сборка 28568 - 64-разрядная версия

Решение. Перейдите в диспетчер задач и найдите службу кэширования Tortoise SVN, завершите эту задачу и повторите попытку, чтобы обновить/зафиксировать изменения.

Ответ 10

У меня была такая же проблема при использовании VPN с CollabNet SubversionEdge.

Я просто включил Сервер Subversion должен работать через https в разделе "Настройки" → "Настройки сервера", и это решило проблему для меня.

Ответ 11

Я исправил эту проблему на своем ноутбуке, отключив Wi-Fi и подключив кабель.