понедельник, 14 января 2013 г.

Неопознанная ошибка HRESULT=80004005

Вводная: При обновлении конфигурации, возникала ошибка "Неопознанная ошибка HRESULT=80004005".
Судя по статье Гилёва проблема связана с нехваткой оперативной памяти (хотя rphost.exe больше 200 метров не потреблял).

Ссылки обязательные к прочтению -
http://www.gilev.ru/1c/memleak/memorymore.htm
http://infostart.ru/public/18771/

1. Рестарт сервера 1С
2. ТиИ со всеми отмеченными галками
3. Рестарт сервера БД
4. Останавливаем сервер 1С и чистим папку "C:\Program Files\1cv82\srvinfo\reg_1541\" (число может отличаться - это порт на котором у вас кластер настроен) - это кэш сервера из-за него тоже могут быть проблемы (необходимо сохранить список БД и настройки 1С сервера, иначе надо будет их придётся забивать заново, так же рекомендую держать наготове дистрибутив - может потребоваться переустановка)
5. Также чистим "C:\temp\" , "C:\WINDOWS\Temp\" и темповую папку пользователя из-под которого запускается сервис 1С. К примеру если пользователь 1cUsr "C:\Documents and Settings\1cUsr\Local Settings\Temp\"

PS: Если проблема осталась то, как вариант
1. Переводим сервер 1С и БД на 64 бита 
2. Временно переносим на другой сервер, где БД будет ЕДИНСТВЕННОЙ (с обязательным отключением фоновых задач)
3. Выгружаем в dt, загружаем в файловую. Пробуем сделать то, что нам надо.
4. Если БД типовая и без правок, то можно попробовать "загрузить конфигурацию" (не объединение) из cf (то есть просто переписывание конфигурация, только надо брать точно такой-же релиз, как и был)
5. Удалением записи больше 120 метров из таблицы config
6. Есть БД на сервере несколько, то может помочь добавление рабочих процессов в консоли
7. Также данная ошибка может возникать, если на одном сервере запущены одновременно 1С и SQL. И при этом не настроено ограничение потребления памяти на скуль-сервере (выжирает всю память и не остаётся для 1С)