Ошибка исключительной блокировки информационной базы активные сеансы и соединения

Случается, что при работе с программой 1С возникает подобная ошибка — ошибка блокировки данных:

Рис.1 Распространенная ошибка
Рис.1 Распространенная ошибка

Чаще всего данное предупреждение конфигуратора возникает при выгрузке информационной базы или при обновлении конфигурации 1С. Для того чтобы исправить сложившуюся ситуацию и запустить работу конфигурации, в первую очередь необходимо выяснить причины ошибки исключительной блокировки информационной базы. Это может быть одна из следующих причин:

  • Пользователи не вышли из системы 1С

Для начала необходимо посмотреть все активные сеансы пользователей. Активных пользователей можно посмотреть в конфигураторе 1С так: нажать кнопку Администрирование, затем выбрать Активные пользователи. И попросить их выйти из системы. Также информацию о блокирующих сеансах обычно можно получить из самого окна с ошибкой.

  • У пользователя запущена база 1С, но не введен пароль

В таком случае у пользователя остается висеть подобное окно:

Рис.2 У пользователя запущена база 1С, но не введен пароль
Рис.2 У пользователя запущена база 1С, но не введен пароль

Сеанс такого пользователя найти сложнее, так как он не отображается в окошке Активные пользователи. Более того, информация об ошибке не содержит какой-либо полезной информации:

Рис.3 Информация об ошибки
Рис.3 Информация об ошибки

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

  • Зависшие сеансы

Все пользователи вышли, а сообщение об ошибке остается прежним, значит, скорее всего, есть зависшие сеансы. Для таких зависших сеансов требуется принудительное завершение. Это рекомендуется делать аккуратно, прибегая к этому методу только тогда, когда не получаются все остальные.

Способы завершения зависших сеансов в файловом варианте

  • С помощью Диспетчера задач. При завершении сеансов информация у пользователей, работающих в системе, может не сохраниться, и важные данные могут быть потеряны. Завершить сеансы данным способом можно так: вызвать диспетчер задач (Ctrl+Alt+Delete), затем нажать снять задачу, затем завершить процесс. Процессы 1С называются 1Сv8.exe или 1Сv8c.exe.
Рис.4 Диспетчер задач
Рис.4 Диспетчер задач
  • Перезагрузить сервер, на котором установлена файловая система 1С

Способы завершения зависших сеансов в клиент-серверном варианте

В первую очередь, необходимо попробовать удалить сеансы через консоль администрирования серверов, найдя в ней нужную базу и зайдя в меню Сеансы*.

  • Выделить нужные зависшие сеансы и удалить их через пункт контекстного меню;
Рис.5 Меню Сеансы
Рис.5 Меню Сеансы

*Если в меню Сеансы нет сеансов, их стоит поискать в меню Соединения. И попробовать аналогично удалить.

  • Если не удалось удалить сеансы, используя консоль, то необходимо перезапустить службу Агент сервера 1С:Предприятия 8.3.
  • Если все предыдущие способы не решили проблему и зависшие сеансы так и остались на своих местах, то в качестве крайней меры необходимо перезагрузить сервер.

Зависшие фоновые задания в клиент-серверном варианте

В клиент-серверном варианте частым источником возникновения ошибки исключительной блокировки информационной базы являются повисшие фоновые задания.

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

Чтобы их удалить можно попробовать следующие способы:

  • Удалить их несколько раз подряд и проверить, не появляются ли они вновь.
  • В свойствах базы установить флаг Блокировка регламентных заданий включена, и после этого еще раз попробовать удалить зависшее задание.
Рис.6 Блокировка регламентных заданий включена
Рис.6 Блокировка регламентных заданий включена

Таким образом, при возникновении такой проблемы, как ошибка исключительной блокировки информационной базы, главным шагом становится выяснение причины возникновения проблемы, поскольку выбор способа ее устранения, в частности, среди описанных в данной статье, зависят от этого. То есть не стоит торопиться перегружать сервер сразу же, для начала надо попробовать решить проблему более «гуманным» образом.

Содержание:

1.     Ошибка исключительной блокировки информационной базы

         При попытке обновления ИБ в 1С или при попытке выгрузки информационной базы 1С из конфигуратора, может возникать довольно частая ошибка «Ошибка исключительной блокировки информационной базы».  

         Данная ошибка может возникать по многим причинам, но смысл ее один – какой-то процесс, использующий данную информационную базу 1С Предприятие в этот момент, не дает монопольного доступа к базе 1С для совершения нужных действий, так как есть вероятность изменения данных в базе в этот момент.     

         Обновление базы 1С, к примеру, можно сделать и динамически. В таком случае для пользователя, что работает в базе в момент обновления, конфигурация останется прежней, а вот для пользователей, что вошли после обновления либо если вышеуказанный пользователь выйдет и заново зайдет в базу, конфигурация будет уже обновленной. Но динамическое обновление 1С снижает производительность работы базы, так как нужно держать в памяти отдельно каждое такое обновление. Но если изменилась структура данных информационной базы 1С, например, добавили новый реквизит объекта, то динамическое обновление 1С будет недоступно.  

2.     Причины блокировки базы 1С

         Самая простая причина блокировки базы 1С – в данный момент в базе работают пользователи. В таком случае нужно попросить их выйти из базы на время. Просмотреть список активных пользователей в базе в данный момент можно, зайдя во вкладку «Администрирование» конфигуратора, пункт «Активный пользователи». Для принудительного завершения сеанса пользователя можно использовать консоль администрирования 1С. Выбрав нужную базу, можно выделить всех активных пользователей и завершить принудительно их сеансы. Второй причиной блокировки базы 1С могут являться фоновые задания, который появляются и исчезают в определенные моменты.       

         В таком случае нужно либо выбрать момент, когда не будет активных фоновых заданий, либо через консоль администрирования 1С зайти в свойства информационной базы 1С Предприятие и поставить галочку на пункте «Блокировка регламентных заданий включена». Таким же способом через консоль можно бороться с «зависшими» сеансами пользователей и регламентных заданий.

         Третьей причиной может стать открытое окно ввода имени и пароля пользователя информационной базы 1С. В этом случае пользователя не будет видно в списке активных пользователей.

Специалист компании «Кодерлайн»

Александр Суворов

Перейти к контенту

Бывает, работая в продукте 1С пользователи сталкиваются с ошибкой блокировки информационной базы.

В основном подобная проблема возникает в результате выгрузки базы данных или обновлении программы. При решении любой жизненной проблемы в первую очередь необходимо определить причины, что бы не «лечить» симптомы «болезни».
Причиной обозначенной ошибки могут быть:

Ошибка исключительной блокировки информационной базы 1С 8.3

Причины ошибки

1С Ошибка исключительной блокировки информационной базы

  1. Юзер не вышел из системы 1С
    1. Проверим сеансы пользователей, находящихся в сети, активных юзеров смотрим в конфигураторе 1С. При выявлении пользователей — необходимо заставить или попросить выйти из сеанса. В вылетевшем окне с ошибкой также написана информация об активных пользователях.
  2. Запущен 1С но не совершен вход в систему.
    1. 1С Ошибка исключительной блокировки информационной базы
    2. В данном случае обнаружить кто включил программу но не зашел будет сложнее. Такой пользователь не считается активным и вошедшим в 1С. Также в отчете об ошибке не отображается включенная программа.
    3. 1С Ошибка исключительной блокировки информационной базы
    4. Проблема решается путем прекращения процессов в диспетчере (вызывается при помощи alt+ctrl+del). Ошибка возникает только в случае формирования базы данных при помощи файлов.
  3. У одного из пользователей завис сеанс
    1. Случается, когда программа на всех компьютерах закрыта, работа с 1С прекращена, однако на одном из ПК произошло зависание. Дальнейшие действия совершать только после совершения ранее описанных способов решения задачи.
    2. Опасносить метода в том, что последние данные не будут сохранены. Важная информация может быть удалена. Что бы справиться с задачей, нужно открыть диспетчер задач и закрыть процессы с именем 1cv8.exe, 1cv8c.exe
    3. 1С Ошибка исключительной блокировки информационной базы
    4. Перезагрузка центральной системы, где установлено 1С программное обеспечение
    5. Прекратить зависший сеанс можно при помощи административной панели, как указано на рисунке:
      1. 1С Ошибка исключительной блокировки информационной базы
    6. Во вкладке «сеансы» последних может не оказаться, тогда стоит поискать в меню «соединения»
    7. При неудачной попытке завершить действующие сеансы, следует перезапустить службу «Агент сервера 1С»
    8. В случае отсутствия результатов, после всех произведенных действий — перезагрузите сервер.
  4. Зависание заданий
    1. Программа 1С известна также возникновением проблем в связи с зависшими заданиями базы данных
    2. Главный минус указанной ошибки состоит в том, что задания довольно сложно убрать. Что бы посмотреть имеющиеся задания нужно зайти в панель администрирования и открыть панель «Соединения». При попытке удаления заданий, обычно они появляются вновь. Для удаления следует проделать следующее:
      1. Удаляем каждое из заданий, затем проверяем появятся ли они снова.
      2. Ставим флажок, как указано на картинке ниже, удаляем снова:
        1. 1С Ошибка исключительной блокировки информационной базы

Рекомендации по исправлению ошибки

При возникновении ошибки на компьютере, болезни в организме или другой проблемы, первое что нужно сделать — определить причину сбоя в системе. Зачастую, проблемы решаются довольно простым и легким способом не прибегая к «оперированию». То же самое можно сказать и про ошибку 1с исключительной блокировки информационной базы — сперва стоит определить возникшую проблему, что позволит решить задачу без лишних потерь.

В этой статье мы рассмотрим одну из распространённых ошибок в 1С, которая характеризуется появлением сообщения «Ошибка исключительной блокировки информационной базы». Вы узнаете, как можно быстро это исправить и продолжить пользоваться программой.

1С является незаменимым помощником в большинстве организаций — от небольшого офиса до крупной корпорации. Данная программа охватывает множество структур бизнеса и значительно упрощает работу сотрудникам. Но для того чтобы эффективно пользоваться этим инструментом, нужно иметь опыт и умение решать проблемы и ошибки.

Появление ошибок в 1С является нормальным рабочим процессом. Но это не из-за того, что программа как-то плохо сделана. Большинство ошибок возникает от того, что пользователь что-то недоглядел или пропустил. Поэтому важно уметь быстро и оперативно диагностировать и решать такие проблемы. Особенно если работа не терпит отлагательств.

1С, самолётик

Содержание

  1. От чего возникает «Ошибка исключительной блокировки информационной базы»
  2. Во время работы с базой есть активные сеансы пользователей
  3. У пользователя запущенна база, но пароль не введён
  4. Зависшие сеансы в 1С
  5. Зависшие фоновые процессы

От чего возникает «Ошибка исключительной блокировки информационной базы»

Данное сообщение может появиться во время обновления или выгрузки базы данных 1С. Сообщение говорит о том, что база данных программы заблокирована для дальнейшего использования. Значит, для того, чтобы эту проблему устранить, необходимо выяснить, на каком уровне заблокирована база и как её разблокировать. Возможные причины мы и рассмотрим ниже.

Ошибка исключительной блокировки информационной базы

Во время работы с базой есть активные сеансы пользователей

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

Список пользователей, которые сейчас не вышли из 1С, можно увидеть в разделе «Администрирование», в подразделе «Активные пользователи». Либо в самом сообщении об ошибке.

Активные пользователи в 1С

В сообщении указываются пользователи, которые не вышли из 1С.

Чтобы решить проблему в таком случае, нужно просто попросить выйти этих пользователей из 1С, сохранив изменения. А затем, после завершения процедуры с базой данных им можно будет снова войти.

Подробнее: На сервере 1С: Предприятия произошла неисправимая ошибка. Приложение будет закрыто.

У пользователя запущенна база, но пароль не введён

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

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

Пароль не введён

Но если найти пользователя не удаётся, то можно попытаться отыскать его процесс в диспетчере задач и завершить его. Для запуска диспетчера задач, нажмите правой кнопкой мышки на панель задач, а затем «Диспетчер задач» (или можно просто нажать сочетание клавиш Ctrl + Alt + Del).

Диспетчер задач

Найдите процессы с названиями 1Cv8.exe и/или 1Cv8c.exe, и выделите мышкой.Выделение процесса

Затем внизу диспетчера нажмите «Снять задачу».

Снять задачу

Будьте осторожны, при таком завершении работы пользователя, данные внесённые им во время работы в программу 1С, которые он не успел сохранить, окажутся безвозвратно потеряны.

Ошибка исключительной блокировки информационной базы такого характера возникает в файловых базах данных.

Если вы убедились в том, что все пользователи вышли из своих учётных записей, а также нет пользователей, которые запустили базу, но не ввели пароль, то проблема может быть в зависших сеансах. Определить, какой конкретно пользователь завис, будет также затруднительно, так как в активных пользователях он может не отображаться.

Поэтому решить данную проблему можно также с помощью диспетчера задач — найти процесс пользователя и принудительно его завершить, как было описано выше. Опасаться за не сохранения внесённых данных здесь уже не нужно, так как они всё равно не сохранятся, раз сеанс завис.

Вам может быть это интересно: Соединение с сервером баз данных разорвано администратором в 1С.

Зависшие фоновые процессы

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

Список фоновых заданий можно увидеть в разделе «Процессы» в консоли администрирования 1С. И если попытаться удалить их, то пользователь может быть неприятно удивлён тем, что они появляются снова и опять мешают выгрузке базы. Здесь можно порекомендовать лишь попробовать закрыть такие задачи несколько раз. А если это не помогает, то в свойствах задачи включить опцию «Блокировка регламентных заданий включена», а затем снова попытаться закрыть.

Блокировка регламентных заданий включена

Для того, чтобы успешно решить проблему ошибки исключительной блокировки информационной базы в 1С, следует попытаться установить её причину. Иногда её видно в самом сообщении об ошибке, когда, например, оно отображает имя активных пользователей, мешающих выгрузке или обновлению базы. А в других случаях приходится искать проблему самостоятельно. Если вам не удаётся устранить эту ошибку своими силами, то следует обратиться в службу поддержки сервиса, который занимается обслуживанием 1С на вашем предприятии.

Перейти к контенту

Бывает, работая в продукте 1С пользователи сталкиваются с ошибкой блокировки информационной базы.

В основном подобная проблема возникает в результате выгрузки базы данных или обновлении программы. При решении любой жизненной проблемы в первую очередь необходимо определить причины, что бы не «лечить» симптомы «болезни».
Причиной обозначенной ошибки могут быть:

Ошибка исключительной блокировки информационной базы 1С 8.3

Причины ошибки

1С Ошибка исключительной блокировки информационной базы

  1. Юзер не вышел из системы 1С
    1. Проверим сеансы пользователей, находящихся в сети, активных юзеров смотрим в конфигураторе 1С. При выявлении пользователей — необходимо заставить или попросить выйти из сеанса. В вылетевшем окне с ошибкой также написана информация об активных пользователях.
  2. Запущен 1С но не совершен вход в систему.
    1. 1С Ошибка исключительной блокировки информационной базы
    2. В данном случае обнаружить кто включил программу но не зашел будет сложнее. Такой пользователь не считается активным и вошедшим в 1С. Также в отчете об ошибке не отображается включенная программа.
    3. 1С Ошибка исключительной блокировки информационной базы
    4. Проблема решается путем прекращения процессов в диспетчере (вызывается при помощи alt+ctrl+del). Ошибка возникает только в случае формирования базы данных при помощи файлов.
  3. У одного из пользователей завис сеанс
    1. Случается, когда программа на всех компьютерах закрыта, работа с 1С прекращена, однако на одном из ПК произошло зависание. Дальнейшие действия совершать только после совершения ранее описанных способов решения задачи.
    2. Опасносить метода в том, что последние данные не будут сохранены. Важная информация может быть удалена. Что бы справиться с задачей, нужно открыть диспетчер задач и закрыть процессы с именем 1cv8.exe, 1cv8c.exe
    3. 1С Ошибка исключительной блокировки информационной базы
    4. Перезагрузка центральной системы, где установлено 1С программное обеспечение
    5. Прекратить зависший сеанс можно при помощи административной панели, как указано на рисунке:
      1. 1С Ошибка исключительной блокировки информационной базы
    6. Во вкладке «сеансы» последних может не оказаться, тогда стоит поискать в меню «соединения»
    7. При неудачной попытке завершить действующие сеансы, следует перезапустить службу «Агент сервера 1С»
    8. В случае отсутствия результатов, после всех произведенных действий — перезагрузите сервер.
  4. Зависание заданий
    1. Программа 1С известна также возникновением проблем в связи с зависшими заданиями базы данных
    2. Главный минус указанной ошибки состоит в том, что задания довольно сложно убрать. Что бы посмотреть имеющиеся задания нужно зайти в панель администрирования и открыть панель «Соединения». При попытке удаления заданий, обычно они появляются вновь. Для удаления следует проделать следующее:
      1. Удаляем каждое из заданий, затем проверяем появятся ли они снова.
      2. Ставим флажок, как указано на картинке ниже, удаляем снова:
        1. 1С Ошибка исключительной блокировки информационной базы

Рекомендации по исправлению ошибки

При возникновении ошибки на компьютере, болезни в организме или другой проблемы, первое что нужно сделать — определить причину сбоя в системе. Зачастую, проблемы решаются довольно простым и легким способом не прибегая к «оперированию». То же самое можно сказать и про ошибку 1с исключительной блокировки информационной базы — сперва стоит определить возникшую проблему, что позволит решить задачу без лишних потерь.

Ошибка исключительной блокировки информационной базы

Я

  

zak555

27.04.15 — 07:48

Пытаюсь сохранить файловую базу через конфигуратор — получаю ошибку:

Ошибка исключительной блокировки информационной базы

Ошибка разделения доступа к базе данных ‘путь’

1. из-за чего это ?

2. лечить — удалить файл ?

  

Tatitutu

1 — 27.04.15 — 08:01

Сеанс зависший?

  

zak555

2 — 27.04.15 — 08:03

(1) в списке активных пользователей только я

  

фобка

3 — 27.04.15 — 08:03

Семерка?

  

zak555

4 — 27.04.15 — 08:04

(3) 8.3.5.1517

  

фобка

5 — 27.04.15 — 08:05

Попробуй анлокером глянуть

  

zak555

6 — 27.04.15 — 08:07

закрыл базу, в папке с базой вижу файлы

1Cv8.1CD.cfl

1Cv8.1CL.cfl

1Cv8.cgr.cfl

1Cv8tmp.1CD.cfl

1Cv8tmp.1CL.cfl

1cv8.1CD

1Cv8tmp.1CD

  

фобка

7 — 27.04.15 — 08:13

(6) если  .1CL есть значит залочена, посмотри кем

  

zak555

8 — 27.04.15 — 08:14

(7) как посмотреть ?

на атрибут владелец файла ?

  

фобка

9 — 27.04.15 — 08:14

(8) программа есть unlocker

  

zak555

10 — 27.04.15 — 08:17

попытался переименовать файлы

система заругалась —

операция не может быть завершена, поскольку этот файл открыт в System

значит заблочен системом ?

  

фобка

11 — 27.04.15 — 08:19

(10) в диспетчере задач в процессах что?

  

zak555

12 — 27.04.15 — 08:24

перезагрузил комп, а пароль пользователя на вход винды не знаю -))

  

yurikmellon2

13 — 27.04.15 — 08:26

(12) несколько раз сказали, анлокером скинь, так нет же, надо использовать другой вариант и поймать гемор. Анлокер 146% рабочий вариант.

  

zak555

14 — 27.04.15 — 08:29

(13) т.е. предлагаешь скачать не пойми откуда и поставить на комп буха ?

и радоваться, если словню блокиратор ?

  

zak555

15 — 27.04.15 — 08:29

такое ощущение, что это вся беда от каспера

  

zak555

16 — 27.04.15 — 08:29

*не блокиратору, а шифратору

  

dmpl

17 — 27.04.15 — 08:33

(13) Уверен, что там у пользователя админские права?

  

Фрэнки

18 — 27.04.15 — 08:33

(12) а на кой тебе было сохранять базу через конфигуратор, если она и так файловая? Сделать можно было архиватором. Эффект был бы абсолютно равнозначный выгрузке в dt, если только не ставилась задача немедленной загрузки в sql

  

dmpl

19 — 27.04.15 — 08:33

(15) Есть такое дело. У него с 1С давняя нелюбовь…

  

zak555

20 — 27.04.15 — 08:34

(18) штатная функция — должна работать

  

Фрэнки

21 — 27.04.15 — 08:34

И насколько я заметил, даже если созданы файлики блокировочные, то сам по себе файл базы ничего не блокирует. Т.е. его можно скопировать.

  

zak555

22 — 27.04.15 — 08:35

+ (20) я же не знаю — отработает сохранение ИБ в пользовательском режиме

  

Фрэнки

23 — 27.04.15 — 08:35

(20) Т.е. был нужен просто бакап?

А в курсе, что 1С не рекомендует делать бакапы баз на основе выгрузки в дт?

  

фобка

24 — 27.04.15 — 08:36

(21) ага, на чтение доступ будет скорее всего

  

zak555

25 — 27.04.15 — 08:40

вошёл в систему — полез в папку

файлы висят

выключил каспера, зашёл в конфигуратор и теперь есть возможность сохранять …

  

zak555

26 — 27.04.15 — 08:41

(23) разумеется в курсе

но я так же в курсе, что когда что-то штатно не отрабатывает лучше сто раз перепроверить

  

zak555

27 — 27.04.15 — 08:42

+ (25) сохранил, вышел из конфигуратора

и файлы блокировки исчезли

  

фобка

28 — 27.04.15 — 08:42

(25) осталось врубить каспера и повторить операцию сохранения

  

Фрэнки

29 — 27.04.15 — 08:42

(22) Причем, эта фича, с проверкой монопольного доступа к ИБ, срабатывает и при серверном режиме тоже.

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

  

Фрэнки

30 — 27.04.15 — 08:47

(27) Так и запускаемый конфигуратор, хоть в файловом режиме, хоть в серверном, тоже вывешивает режим блокировки базы. Так глазками не определишь по наличию в каталоге файликов и активного сеанса конфигуратора, кто именно создавал эти активные файлы. И они в самом деле почему-то часто остаются даже после завершения всех сеансов. Антивирус у меня не Каспер, но есть такие AVG, ESET — видимо это мусор оставляет сама 1С

  

zak555

31 — 27.04.15 — 08:47

(28) времени нет

  

dmpl

32 — 27.04.15 — 08:52

(28) Зачем пускать свинью в огород?

  

dmpl

33 — 27.04.15 — 08:54

(30) При штатном завершении работы всех пользователей последнее приложение удаляет этот файл.

  

Фрэнки

34 — 27.04.15 — 09:09

(33) Должно. А файлики в каталоге по факту остаются.

  

zak555

35 — 27.04.15 — 09:10

(34) видимо каспер заблочил

Оглавление

  • Суть проблемы
  • Общение с технической поддержкой 1с
  • Решение
    • Назначаем всем пользователям непустые пароли
    • Заставляем пользователей вводить пароль
    • Заставляем обновлятор контролировать сохранение установленной блокировки сеансов
  • Как помочь с исправлением ошибки

Суть проблемы

 Ошибка исправлена в тестовой 8.3.21.1140. 

При обновлении или тестировании клиент-серверной базы через обновлятор может возникать ошибка исключительной блокировки на этапах обновления конфигурации базы данных…

Обновляется конфигурация базы данных.
ОбщаяКартинка.Информация: Имя не уникально!
Обновление конфигурации базы данных
Обработка структуры базы данных...
Ошибка исключительной блокировки информационной базы.
База данных заблокирована:
пользователь: ?, сеанс : 4, начат: 13.10.2021 в 0:40:29, приложение: ?

… выполнения обработчиков обновления:

Выполняются обработчики обновления.
Ошибка: ошибка разделенного доступа к базе данных, база данных заблокирована:, компьютер: ?,
пользователь: ?, сеанс: 61511, начат: ?, приложение: ?

… или тестирования, включающее пересчёт итогов.

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

Почему это происходит, ведь обновлятор устанавливает блокировку сеансов и выгоняет всех пользователей перед началом операции? Каким образом новые пользователи попадают в базу по ходу выполнения операции?

Оказывается при определенных условиях ( а именно пересчёт итогов ) конфигуратор сам (несанкционированно) сбрасывает установленную блокировку сеансов (а заодно код разрешения) в клиент-серверной базе.

Я провёл расследование и выяснил, что это баг в платформе (уже веду переписку с технической поддержкой 1с). Проблема никак не связана с обновлятором и воспроизводится только при помощи конфигуратора.

Для того, чтобы конфигуратор несанкционированно сбросил установленную блокировку сеансов (и код разрешения) необходимо выполнение следующих условий:

  1. База является клиент-серверной.
  2. Платформа 1с любая версии 8.3.18, 8.3.19 или 8.3.20.
  3. В базе накоплены определённые изменения в конфигурации (например, выполнено обновление конфигурации Бухгалтерия Предприятие с версии 3.0.95.24 на 3.0.99.19) без последующего обновления конфигурации базы данных. Отдельно подчеркну, что проблема воспроизводится не на всех обновлениях конфигурации ( а только на тех, когда возникает пересчёт итогов ), именно поэтому я привёл пример конкретного обновления на котором проблема воспроизводится.

Если при выполнении этих 3 условий…

  1. Установить в базе блокировку сеансов и код разрешения.
  2. А затем выполнить операцию «Обновление конфигурации базы данных» (хоть вручную через конфигуратор, хоть через обновлятор), либо запустить тестирование и исправление конфигурации с пересчётом итогов (тогда пункт 3 из предыдущего абзаца не важен).

… мы обнаружим, что установленная блокировка сеансов и код разрешения были несанкционированно сброшены конфигуратором (это подтверждается технологическим журналом) по ходу выполнения операции «Обновление конфигурации базы данных» ( а вернее возникшего в процессе выполнения пересчёта итогов ) или тестирования, включающее пересчёт итогов.

И если в этот момент (когда блокировка сеансов сброшена, но операция ещё не закончена) в базу заходят пользователи (вручную или автоматически, так как их предварительно выбросило из базы при блокировке и у них нет пароля), то мы получаем ошибку исключительной блокировки или зависание, если речь идёт о тестировании.

Общение с технической поддержкой 1с

26.10.2021 Вся собранная информация (включающая детальное описание и быстрый способ воспроизведения ошибки) отправлена в техническую поддержку 1с на адрес v8@1c.ru, обращение зарегистрировано под номером HL-405298.

18.11.2021 Получил такой ответ от технической поддержки 1с:
«Ошибка платформы https://bugboard.v8.1c.ru/error/000114376
Исправлена в будущих версиях 8.3.21+»

А значит, установленная блокировка сеансов будет сбрасываться не только при обновлении базы данных, но и при отдельно запущенной операции тестирование и исправление, включающей пересчёт итогов.

 Ошибка исправлена в тестовой 8.3.21.1140. 

Решение

Как решить проблему не дожидаясь исправления платформы? Для этого я подготовил ряд рекомендаций, а также разработал дополнительную опцию в обновляторе. Итак, поехали.

Назначаем всем пользователям непустые пароли

Потому что, если у пользователя пустой пароль, то становится возможен следующий сценарий:

  1. Пользователь с пустым паролем оставил базу открытой и ушёл домой.
  2. Ночью вы сами (вручную или через обновлятор) установили в базе блокировку сеансов (для её обслуживания) и дождались, когда всех пользователей (это функционал типовых) выбросит из базы.
  3. Да, пользователя выбросило, но на его рабочем месте появилось окно ожидания с попытками (каждую минуту) повторного подключения к базе.
  4. Попытки повторного входа будут неудачными, ведь в базе установлена блокировка сеансов.
  5. И тут конфигуратор по ходу выполнения операции «Обновление конфигурации базы данных» несанкционированно сбрасывает (то есть снимает) блокировку сеансов и тот самый диалог ожидания автоматически пускает пользователя обратно в базу! И операция обновления базы данных завершается ошибкой из-за исключительной блокировки.
  6. Так вот если бы у пользователя был непустой пароль — его бы в базу обратно автоматически не пустило.

Заставляем пользователей вводить пароль

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

  • он прописал его (пароль) в параметрах базы в стартере вот так
  • либо зашёл в базу через альтернативный стартер (в настройках которого уже прописаны логин и пароль для входа в базу), например, вот так

… пользователя также пустит обратно в базу автоматически (см. предыдущий сценарий, пункт 5).

Пользователя пускает обратно в базу автоматически потому, что при первоначальном (описанном выше) входе в базу логин и пароль сохраняются в параметрах запуска платформы.

Вопрос какими средствами в этом случае заставить пользователей не прописывать нигде пароль для автоматического входа в базу остаётся открытым.

Заставляем обновлятор контролировать сохранение установленной блокировки сеансов

Заходим в свойства клиент-серверной базы, закладка «Обновление», раздел «Сам процесс»:

Здесь включаем опцию «При обновлении конфигурации базы данных (на проблемных релизах платформы 1с) контролировать сохранение блокировки сеансов».

Внимание! Начиная с тестовой версии от 23 декабря обновлятор согласно этой же настройке осуществляет контроль за сохранением блокировки сеансов при операциях тестирования и исправления, включающей пересчёт итогов.

Кроме того, в скриптах у команды из меню «Обновлятор-Методы-Выполнение пакетного скрипта» появился дополнительный параметр keep_sessions_lock, установка которого в true позволит осуществить контроль за сохранением блокировки сеансов (при условии, что она включена в свойствах базы) при выполнении любой команды.

Например:

@run_cmd(
    script: "%run_1c_d% /UpdateDBCfg -Dynamic-",
    keep_sessions_lock: "true"
)
@run_cmd(
    script: "%run_1c_d% /IBCheckAndRepair -RecalcTotals -TestOnly",
    keep_sessions_lock: "true"
)

По умолчанию данная опция включена и имеет значение «Однократно после» ( рекомендую сразу сменить это значение на «непрерывно в процессе» ).

«Однократно после» означает, что обновлятор считывает состояние блокировки сеансов (а также код разрешения) перед обновлением конфигурации базы данных.

А затем (после окончания обновления конфигурации базы данных) восстанавливает блокировку сеансов (и код разрешения), если они были сброшены конфигуратором.

Эта опция предотвращает дальнейшие проблемы, если блокировка сеансов была сброшена конфигуратором в процессе обновления конфигурации базы данных, но нам повезло и в базу (в процессе обновления конфигурации базы данных) никто из пользователей не попал.

Если это не помогает — установите эту же опцию со значением «Непрерывно в процессе«:

В этом случае обновлятор параллельно с выполнением операции «Обновление конфигурации базы данных» будет контролировать (примерно раз в секунду) состояние блокировки сеансов и как только он обнаружит, что конфигуратор несанкционированно сбросил блокировку сеансов, он тут же восстановит её. В этом случае пользователь сможет попасть в базу, если осуществит такую попытку только в ту же самую секунду, когда конфигуратор несанкционированно сбросил блокировку сеансов.

Вот как это будет выглядеть в отчёте:

Как помочь с исправлением ошибки

 Ошибка исправлена в тестовой 8.3.21.1140. 

Друзья, я уже отписался выше, что ошибка зарегистрирована в 1С.

Теперь я прошу вас по возможности зайти на страницу с ошибкой и поставить отметку «Для меня исправление ошибки важно»:

Тем самым мы повысим вероятность исправления этой ошибки в одном из ближайших релизов платформы.

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Показывать по
10
20
40
сообщений

Новая тема

Ответить

SVGS

Дата регистрации: 23.12.2010
Сообщений: 276

— вылетает после этого сообщения.<br>Ошибка возникает при восстановлении из архива.<br>На другом компе архив раскрывается и работает абсолютно нормально…<br>Что делать?

DMLangepas Кудрявцев

Дата регистрации: 25.04.2012
Сообщений: 149

почистить КЭШи.<br>переустановить платформу.<br>создать пустую конфу для восстановления.

SVGS

Дата регистрации: 23.12.2010
Сообщений: 276

> переустановить платформу.<br>Это делал. Не помогает.<br><br>> создать пустую конфу для восстановления.<br>Это делал — с пустой конфой всё ОК — как только делаем операцию<br>»Загрузить информационную базу» из архива, так снова упираемся в эту проблему…<br> <br>> почистить КЭШи.<br>Этого не делал — просто не знаю, где и как это делается ((<br>Подскажите, если не трудно…

SVGS

Дата регистрации: 23.12.2010
Сообщений: 276

«Погуглил — справился ))<br> <br>Помогла следующая последовательность операций:<br>1) создание пустой базы;<br>2) чистка кэша;<br>3) загрузка рабочей базы.<br> <br>Причины такого поведения файловой базы — тайна за семью печатями! )))»

Денис (САМАРА)

Дата регистрации: 09.04.2008
Сообщений: 8351

«> Причины такого поведения файловой базы — тайна за семью печатями!<br> <br>Кэш «грязный», а не «тайна за 7you печатями» ;)»

Показывать по
10
20
40
сообщений

Я
   sidalexsandr

22.03.17 — 11:47

EffectorSaver выдает ошибку: ===========================================

Задача: UPP

Вид задачи: Архивирование средствами 1С:Предприятие 8

Компьютер: 1-SRV

Начало: 22.03.2017 2:00:00

Конец: 22.03.2017 2:00:09

Статус: Ошибки при выполнении задачи

===========================================

22.03.2017 2:00:00 — Поиск старшей версии 1С:Предприятия …

22.03.2017 2:00:00 — C:Program Files (x86)1cv88.3.9.2033bin1cv8.exe

22.03.2017 2:00:00 — Выгрузка информационной базы …

Ошибка исключительной блокировки информационной базы.

Активные сеансы и соединения:

компьютер: 1-SRV, пользователь: Остякова Алёна, сеанс: 5, начат: 21.03.2017 в 17:12:28, приложение: Толстый клиент;

компьютер: 1-SRV, пользователь: Бабков Сергей, сеанс: 8, начат: 21.03.2017 в 17:34:36, приложение: Толстый клиент

22.03.2017 2:00:09 — Ошибка! Выгрузка информационной базы не выполнена

Вопросы:

1) в чем ошибка

2) как исправить ошибку

   drcrasher

1 — 22.03.17 — 11:49

пятница вроде послезавтра

   Джо-джо

2 — 22.03.17 — 11:50

1)Ошибка исключительной блокировки информационной базы.

Активные сеансы и соединения:

компьютер: 1-SRV, пользователь: Остякова Алёна, сеанс: 5, начат: 21.03.2017 в 17:12:28, приложение: Толстый клиент;

компьютер: 1-SRV, пользователь: Бабков Сергей, сеанс: 8, начат: 21.03.2017 в 17:34:36, приложение: Толстый клиент

2) Выгнать юзеров(закрыть сеансы)

   AleksandrM09

3 — 22.03.17 — 11:53

Я так понимаю файловая база. Сделайте батник или укажите что перед копированием выполнять —

taskkill  /im 1cv8* /f

wait 10

А еще лучше научите сотрудников правильно завершать работу на терминальном сервере.

   AleksandrM09

4 — 22.03.17 — 11:56

P.S. Если у вас все же серверная база, то в настройках задания есть возможность настроить завершение сеансов пользователей 1С.

Но повторюсь, лучше расскажите Алёне и Сергею что из-за их забывчивости не снимается корректно копия и в случае чп, вы придете к ним с паяльником.

   sidalexsandr

5 — 22.03.17 — 11:56

(2) Раньше программа EffectorSaver автоматически выгоняла юзеров перед снятием копии.

   1Снеговик

6 — 22.03.17 — 11:58

Файловая УПП, почему бы и нет

   sidalexsandr

7 — 22.03.17 — 12:13

Что из настроек EffectorSaver выбрать и чем они отличаются, вот настройки:

1) завершить сеансы на сервере 1с Предприятие

2) вызвать штатное завершение работы пользователей ?

  

AleksandrM09

8 — 22.03.17 — 12:16

(7) http://efsaver.ru/docs/help/call-procedurs-1c8/call-procedurs-1c8-disconnect-user.html

TurboConf — расширение возможностей Конфигуратора 1С

Понравилась статья? Поделить с друзьями:
  • Ошибка исключительной блокировки информационной базы effector saver
  • Ошибка исключительной блокировки информационной базы com
  • Ошибка исключительной блокировки информационной базы 1с фоновое задание
  • Ошибка инь ян в месяце ба цзы
  • Ошибка инь ян в доме брака