Завис сеанс намертво. 1С:Предприятие 8.3 (8.3.7.1845) #794234


#0 by 1dvd
Приветствую всех! Есть у меня тестовая база на сервере. При определенных манипуляциях завис сеанс. Не могу обновить конфу - только динамически. Попросил админа прибить сеанс. Он это сделал, в активных пользователях пусто. Однако, обновить по-прежнему не могу, говорит что активный сеанс таки есть. Как его прихлопнуть окончательно? Почему так происходит? Глюк в платформе?
#1 by Amra
прибивайте соединение. не поможет - перезапуск агента сервера
#2 by alexey123perm
Если база на сервере, то в любом перечислении значения поменяйте "Туда-обратно". Платформа это будет трактовать как изменение метаданных и сама завершит сеансы. Ну, или попробует завершить...
#3 by 1dvd
Чего там прибивать? Если б можно было службу рестартануть, я бы ветку не создавал. Сервер боевой
#4 by 1dvd
нифига не понял. Подвигал перечисления. Картина не поменялась
#5 by Sammo
На скулевом сервере соединение есть? Если есть - прибить
#6 by alexey123perm
. Подвигал, делаешь "Обновить конфигурацию базы данных". Выбираешь "Обновить динамически", программа скажет, что динамически обновить не может и предложить завершить сеансы.
#7 by 1dvd
не помогло. Сказала что динамически не может, но завершить сеансы не предлажила
#8 by 1Снеговик
обновись до 8.3.9, там это реализовано)
#9 by rphosts
Это потому-что сеанса уже нет, а блокировка от него осталась. Рестартани сервис 1С-Предприятие
#10 by 1Снеговик
Нельзя чтоли из диспетчера задач прибить? Найди процесс по номеру соединения в конце концов
#11 by 1Снеговик
Боевой сервер надо было ночью рестартовать. Вообще полезно иногда.
#12 by rphosts
может и РП и сеанс быть похереными но блокировка при этом зависает...
#13 by 1dvd
сеанс из диспетчера на клиенте? его там нет
#14 by rphosts
раз в месяц я-бы даже рекомендовал
#15 by rphosts
см
#16 by 1Снеговик
Название тут напомнило: "То что мертво, умереть не может" ))
#17 by alexey123perm
Диспетчере на сервере 1С.
#18 by 1dvd
и какой там процесс прибить? Агента чтоли? Нафига? если можно более гуманным способом перезапустить процесс. Не могу я перезагружать процесс, сервер боевой. Работают люди
#19 by dezss
было такое когда-то...рестарт агента только помог... Сеанса не было, блокировка осталась. Сбросить блокировку никак не получалось. На sql-е тоже ничего не помогло.
#20 by catena
Поэтому тестовые и рабочие базы должны сидеть на разных подоконниках. У меня даже тестовые на два разбиты. Чтобы безболезненно рестартовать агента. Была такая проблема, только рестартом службы спаслись.
#21 by 1dvd
у нас так и есть. У меня есть собственный сервер, в котором я делаю что хочу. Однако, возникла проблема, которая проявляется только на боевом сервере. Создал пустую базу там, только конфигурация, чтобы выявить причину сбоя. А тут на тебе...
#22 by Dmitrii
Необходимо остановить сервер 1С и убить всё содержимое папочки? содержащей информацию о  блокировках, название которой начинается с "snccntx". Эта папочка лежит в папке реестра кластера серверов 1С (по умолчанию - c:Program Files1cv8srvinfo eg_1541 ). При работающем агенте сервера папку удалить нельзя. Ниже пример скрипта для перезапуска всех служб и процессов 1С с убиванием всех временных файлов (в том числе и данных о блокировках в папке snccntx). Пример приведен для случая, когда реестр кластера серверов 1С размещен в нестандартном месте на диске F - F:srvinfo eg_1541 set SERVICE_1C_NAME="1C:Enterprise 8.3 Server Agent (x86-64)" set SERVICE_RAS_NAME="1C:Enterprise 8.3 Remote Server" echo done stop %DATE% %TIME% >> %TEMP_PATH%%LOG_FILE% echo clean temp %DATE% %TIME% >> %TEMP_PATH%%LOG_FILE% DEL /Q /F /S %TEMP_PATH%*.* echo done clean temp %DATE% %TIME% >> %TEMP_PATH%%LOG_FILE% sc start %SERVICE_1C_NAME% sc start %SERVICE_ RAS _NAME% echo Service %SERVICE_1C_NAME% restarted at %DATE% %TIME% >> %TEMP_PATH%%LOG_FILE%
#23 by catena
А у меня на рабочем сервере три кластера. Очень полезно. Я не критикую, я советую.
#24 by Dmitrii
+ к пример для сервера x64. Если сервер x86, то необходимо изменить в скрипте имя службы 1С.
#25 by 1dvd
три кластера - это три отдельных SQL сервера? Кучеряво живёте :)
#26 by Dmitrii
>> Не могу я перезагружать процесс, сервер боевой Это ваши личные половые трудности. Об этом надо было думать, когда просили админа прибить сеансы и делали свои непонятные манипуляции. Сейчас поздняк метаться. Других способов, кроме нет. Надо убить данные о зависших блокировках (папку snccntx*), а при работающем агенте это невозможно.
#27 by catena
Зачем? Говорю же, один сервер приложений, один скулевый. Процессы разнесены просто.
#28 by Amra
Соединение в консоли сервера предприятия, елки! Ну как маленький
#29 by 1dvd
прибили давно. Пусто там
#30 by Dmitrii
Он о кластере серверов 1С. Причем он мог поднять их все на одном физическом серваке. Зачем это надо не знаю. Польза весьма сомнительна. Это не дает ни отказоустойчивости, ни производительности. Имеет смысл только для разнесения продуктива от разработки. Первый не трогаем, на втором -debug и всяческое баловство с динамическими обновлениями и перезапусками по желанию.
#31 by 1dvd
Катёна девушка. Причем, очень даже красивая
#32 by Amra
Ты соединение с сеансами не путаешь?
#33 by Dmitrii
Всё равно придётся сервер останавливать.
#34 by Dmitrii
Это не решит его проблему.
#35 by aleks_default
Киллнуть процесс на SQL-сервере через квери аналайзер не пробовали?
#36 by 1dvd
это как?
#37 by dezss
не будет его там...у самого такой косяк был когда-то...осталась только блокировка и все...сеансов и процессов нет...
#38 by Dmitrii
Это не поможет. Не парься.
#39 by bmitkin
В консоли администрирования сервера ставишь интервал перезапуска ненулевой. Сервер перезапускает процессы. Активные соединения переходят на новые процессы, а умершие соединения остаются на старых. Когда все живые перейдут на новые (активные) процессы, неактивные можно грохнуть через диспетчер задач по PID. Вместе с ними умрут зависшие соединения. После этого обнули интервал перезапуска, чтобы больше не перезапускались процессы.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С