Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

ERR_1C_LOCK_TIMEOUT_DEADLOCK 1С:Предприятие и СУБД

Дедлоки в 1С: устранение ошибки «Превышено время ожидания блокировки»

Обновлено: 27.08.2026 · Официальная документация ↗

Как выглядит ошибка взаимоблокировки (Дедлока)?

В момент пиковой нагрузки (например, в конце рабочего дня, когда склад отгружает накладные, а кассиры бьют чеки) у пользователей начинает вращаться колесо загрузки. Через 20–60 секунд ожидания 1С аварийно прерывает операцию с системной ошибкой: «Превышено максимальное время ожидания предоставления блокировки» или «Конфликт блокировок при выполнении транзакции: Взаимоблокировка (Deadlock)».

Схема классической взаимоблокировки (Deadlock)

ШагТранзакция 1 (Менеджер Петров)Транзакция 2 (Кладовщик Иванов)
1Заблокировал Склад №1 (ждет Склад №2)Заблокировал Склад №2 (ждет Склад №1)
2Пытается получить доступ к Складу №2... (ЖДЕТ)Пытается получить доступ к Складу №1... (ЖДЕТ)
3ТУПИК (Взаимная блокировка). СУБД принудительно убивает одну из транзакций по тайм-ауту.

Первая помощь: быстрое освобождение базы

  1. Определите заблокированный сеанс: откройте консоль кластера серверов 1С или встроенную обработку «Активные пользователи».
  2. Найдите сеанс, который выполняет долгую транзакцию (время захвата блокировки более 60 секунд) и завершите его.

Системное решение проблемы дедлоков

  1. Включите управляемый режим блокировок: убедитесь, что в свойствах конфигурации режим управления блокировкой данных установлен в «Управляемый» (Managed Lock).
  2. Настройте технологический журнал (ТЖ): создайте файл logcfg.xml в папке C:\Program Files\1cv8\conf\ для сбора событий TLOCKS и TDEADLOCK:
<config xmlns="http://v8.1c.ru/v8/tech-log">
  <log location="C:\1C_Logs\Deadlocks" history="24">
    <event>
      <eq property="name" value="TDEADLOCK"/>
    </event>
    <event>
      <eq property="name" value="TLOCK"/>
      <ge property="WaitConnections" value="1"/>
    </event>
    <property name="all"/>
  </log>
</config>

Главное правило для программистов 1С: Блокировки ресурсов в коде должны захватываться строго в одинаковом алфавитном/хронологическом порядке во всех процедурах проведения документов!

💡 Практика специалистов: при анализе логов ТЖ используйте бесплатную утилиту «1С:Центр управления производительностью» (ЦУП) или скрипты парсинга ТЖ. Это позволяет за 10 минут точно определить строку кода 1С, из-за которой встала вся компания.

Частые вопросы (FAQ)

Почему дедлоки не возникают в файловой базе?

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

Какое стандартное время ожидания блокировки в 1С?

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

Поможет ли увеличение мощности процессора сервера?

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

Как влияет фоновое регламентное задание на блокировки?

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

Полезные материалы
Рекомендуем