×
Мы обрабатываем cookies, чтобы сделать наш сайт удобнее и персонализированнее для вас. Подробнее: политика использования «cookies» и «политики конфиденциальности».

Для самостоятельной настройки ознакомьтесь с инструкцией

Дополнительные настройки cookies в браузерах

Файлы cookie автоматически загружаются в ваш браузер при посещении веб-сайта. У вас есть возможность управлять этими файлами. Если Вы не согласны с использованием файлов cookies, запретите их сохранение на своём устройстве, удалите уже имеющиеся файлы cookies через настройки браузера или прекратите использование сайта.

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

Инструкция по отключению cookies
Принять
Настроить
Отклонить

ДОКУМЕНТАЦИЯ

Выберите версию, форк и язык для СУБД Digital Q.DataBase, чтобы прочитать или скачать всю документацию.
Техподдержка
Документация
Диасофт
Авторские права © 2016–2025 ООО "Диасофт Экосистема"
Скачать всю документацию:

3.4.12. Управление блокировками

deadlock_timeout (integer) #

Данный параметр определяет время ожидания блокировки перед проверкой наличия состояния взаимной блокировки. Проверка на наличие взаимных блокировок является относительно ресурсоемкой, поэтому сервер не выполняет ее при каждом ожидании блокировки. Оптимистично предполагается, что взаимные блокировки не характерны для промышленных приложений, и система просто ожидает снятия блокировки некоторое время перед проверкой на взаимную блокировку. Увеличение этого значения сокращает количество времени, затрачиваемого на излишние проверки, но замедляет регистрацию реальных ошибок взаимной блокировки. Если данное значение указано без единиц измерения, оно интерпретируется в миллисекундах. Значение по умолчанию — одна секунда (1s), что, вероятно, является минимально целесообразным значением для практического использования. На высоконагруженном сервере может возникнуть необходимость увеличить этот параметр. В идеале значение параметра должно превышать типичное время выполнения транзакции, для повышения вероятности того, что блокировка будет снята до того, как ожидающий процесс инициирует проверку на наличие взаимной блокировки. Только суперпользователи и пользователи, обладающие соответствующими SET привилегиями, могут изменять данный параметр.

В случае когда log_lock_waits установлен, данный параметр также определяет длительность времени ожидания перед формированием сообщения в журнале о задержке блокировки. При необходимости исследования задержек блокировок рекомендуется установить значение параметра меньше стандартного deadlock_timeout.

max_locks_per_transaction (integer) #

Общая таблица блокировок содержит место для max_locks_per_transaction объектов (например, таблиц) на каждый серверный процесс или подготовленную транзакцию; следовательно, в любой момент времени может быть заблокировано не более указанного числа различных объектов. Данный параметр ограничивает среднее количество блокировок объектов, используемых каждой транзакцией; при этом отдельные транзакции могут блокировать больше объектов, пока блокировки всех транзакций размещаются в таблице блокировок. Это не не количество строк, доступных для блокировки; данное значение не ограничено. Значение по умолчанию, равное 64, исторически является достаточным, однако может потребоваться увеличить данный параметр, если выполняются запросы, затрагивающие множество различных таблиц в рамках одной транзакции, например, при обращении к родительской таблице со множеством дочерних элементов. Данный параметр может быть установлен только при запуске сервера.

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

max_pred_locks_per_transaction (integer) #

Таблица разделяемых предикатных блокировок содержит место для max_pred_locks_per_transaction объектов (например, таблиц) на каждый серверный процесс или подготовленную транзакцию; следовательно, в любой момент времени может быть заблокировано не более указанного числа различных объектов. Данный параметр ограничивает среднее количество блокировок объектов, используемых каждой транзакцией; при этом отдельные транзакции могут блокировать больше объектов, пока блокировки всех транзакций размещаются в таблице блокировок. Это не не количество строк, доступных для блокировки; данное значение не ограничено. Значение по умолчанию, равное 64, исторически является достаточным, однако может потребоваться увеличьте данное значение, если имеются клиенты, обращающиеся к большому количеству различных таблиц в рамках одной сериализуемой транзакции. Данный параметр может бы быть задан только при запуске сервера.

max_pred_locks_per_relation (integer) #

Данный параметр определяет количество страниц или кортежей одного отношения, которые могут быть блокированы предикатной блокировкой перед повышением уровня блокировки до охвата всего отношения. Значения, превышающие или равные нулю, означают абсолютный предел, в то время как отрицательные значения означают max_pred_locks_per_transaction деленное на абсолютное значение данного параметра. Значение по умолчанию составляет -2, что сохраняет поведение предыдущих версий Digital Q.DataBase. Данный параметр может быть установлен только в postgresql.conf файле или в командной строке сервера.

max_pred_locks_per_page (integer) #

Данный параметр определяет количество строк на одной странице, для которых может быть установлена предикатная блокировка перед тем как тип блокировки будет изменен на блокировку всей страницы. Значение по умолчанию составляет 2. Данный параметр может быть задан только в конфигурационном postgresql.conf конфигурационном файле или в командной строке запуска сервера.

Наверх
свяжитесь
с нами
контакты
Для прямой связи с нами вы можете использовать контакты ниже, либо оставить заявку через форму обратной связи, и мы обязательно свяжемся с вами

*поля обязательные к заполнению