Добрый день. Есть кластер 1С из 4 серверов. На нём большая информационная база. Несколько месяцев назад при обновлении конфигурации (сейчас вылезло в третий раз за 5 месяцев, обновления в 1-2 раза в неделю) стала появляться ошибка раздельного доступа к информационной базе со списком соединений, мешающих обновлению.
Зашёл в список блокировок - блокировки есть.
Зашёл в список соединений - соединений, на которые ругается 1С при обновлении нет.
Если остановить на серверах все службы, очистить серверный кэш и запустить заново, блокировки исчезают, но в этом кластере вскоре появится ещё штук 10 информационных баз и из-за каждой зависшей блокировки перезагружать службы всего кластера будет очень проблематично.
Соответственно, вопрос:
1. Можно ли найти источник блокировки (какой пользователь, какое задание, какая функция, что заблокировало)?
2. Есть ли какой-то способ убить блокировки без перезапуска всего на свете, если уверен, что они глючные?
При обновлении конфигурации в 1С возможны два варианта - динамичное обновление без завершения сессий пользователя и завершение работы в информационной базе всех пользователей.
Второй вариант и должен использоваться. Отсюда вопрос - зачем знать кто блокирует, когда все сеансы должны быть принудительно завершены. Если я правильно понял проблему.
Каждая блокировка привязана к пользователю, завершив сессию пользователя - блокировка снимается.
В конфигурации БД можно настроить, когда должна отвалиться зависшая блокировка.