Программа заблокирована для выполнения обновления 1с

Если файловая база заглючила при обновлении и сама себя заблокировала — нужно ввести следующие Дополнительные параметры запуска:

ENTERPRISE /F«D:1СТИПОВАЯУТ» /CРазрешитьРаботуПользователей /UCРезервноеКопирование

Разблокировка базы 1С после обновления ”
Валентина says:

Выполнение обработчиков обновления. При этом обновлятор запустит эти обработчики только в том случае, если версия конфигурации после обновления изменилась.

Добавить комментарий

  • Готовые обработки 1С
  • 1С 7.7
  • 1С 8.3
  • MS SQL 2008
  • Администрирование
  • Бухгалтерия Предприятия 2.0
  • Бухгалтерия Предприятия 3.0
  • Документы
  • Конвертация данных
  • Новости
  • Платформа 1C
  • Построитель
  • Простые приемы разработки
  • Работа с формами
  • Работа со справочниками
  • Работа со строками, текстом
  • Разное
  • Регистры сведений
  • РИБ
  • СКД
  • Специалист Платформа 8.2
  • Спорт
  • ТиС 9.2
  • Управление Торговлей 11
  • Цитатник
  • Юмор

Источник: code1c.ru

ОБНОВЛЕНИЕ ТИПОВЫХ КОНФИГУРАЦИЙ. УРОК 3. БЛОКИРОВКА РАБОТЫ ПОЛЬЗОВАТЕЛЕЙ

Программа заблокирована для выполнения обновления 1с

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

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

Обновляется конфигурация базы данных. ОбщаяКартинка.Информация: Имя не уникально! Обновление конфигурации базы данных Обработка структуры базы данных. Ошибка исключительной блокировки информационной базы.

База данных заблокирована: пользователь: ?, сеанс : 4, начат: 13.10.2021 в 0:40:29, приложение: ?

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

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

, сеанс: 61511, начат: ?, приложение: ?

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

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

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

Читайте также:
Программа аудита расчетов с контрагентами пример

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

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

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

ОБНОВЛЯТОР-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с

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с) контролировать сохранение блокировки сеансов».

База данных 1С заблокирована

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

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

Фото - База данных 1С заблокирована

Фото — База данных 1С заблокирована

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

В ошибке столько непонятного для пользователя текста, что становится страшно за его психику. Однако, данная проблема решается достаточно просто. Если вы 100%-но уверены (и только тогда), что никакого восстановления информационной базы сейчас не идёт, тогда достаточно сделать следующее. Из каталога с базой следует удалить файл 1Cv8.cdn.

Чтобы не ошибиться, ещё раз заостряю внимание на расширении: .cdn. (файл блокировки данных). И вот вы попали в базу!

Усложнение ситуации: файл не удаляется, потому что открыт, например, в «System». Здесь нам поможет сторонняя программа типа Unlocker (скачиваем бесплатно в интернете). Помечаете файл на удаление и перезагружаете компьютер. Проблема решена.

Программа Unlocker

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

Источник: itsvsem.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru