powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / max_locks_per_transaction
9 сообщений из 9, страница 1 из 1
max_locks_per_transaction
    #39382190
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день
Можете объяснить за что отвечает параметр max_locks_per_transaction? На postgrespro.ru есть описание, но не могу понять на что влияет этот параметр.
...
Рейтинг: 0 / 0
max_locks_per_transaction
    #39382212
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemar,

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

Отсюда .
Тема 4 Снимки и блокировки.
Можно глянуть видео с 17:18
...
Рейтинг: 0 / 0
max_locks_per_transaction
    #39382217
Фотография Gallemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел Лузанов, а для чего его требуется увеличить?
...
Рейтинг: 0 / 0
max_locks_per_transaction
    #39382272
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gallemar,

Не надо трогать этот параметр, тем более если вы не знаете как он работает.
Он влияет на размер фиксированной таблицы блокировок, умолчательного значения более чем достаточно.
...
Рейтинг: 0 / 0
max_locks_per_transaction
    #39382310
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GallemarПавел Лузанов, а для чего его требуется увеличить?

Я вообще не уверен, что его требуется увеличивать.
PostgreSQL может предложить это сделать (в сообщении об ошибке), если в одной транзакции тысячами создавать/удалять объекты БД.
Но здесь скорее нужно поменять подход к разработке, чем этот параметр.
...
Рейтинг: 0 / 0
max_locks_per_transaction
    #39382377
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vyegorov<> умолчательного значения более чем достаточно.
при обильном партицировании -- увы, нет. не всегда

и для некоторых запросов, порождаемых сбрендившими трансляторами типа 1С, как мы знаем, тоже. (когда текст запроса сам по себе -- многие мегабайты)


очевидно ТС увидел битым текстом в логах/ошибках рекомендацию движка пж увеличить это число, то ли написав хитровыдуманный запрос сам, то ли попользовав что--то готовое. т.ч. "увидев такую рекомендацию в тексте ошибок" -- одно из 2--х: задумаццо об архитектуре, и переделать всё (хотя бы запрос, вызвавший оное сообщение) наново, или таки увеличить оный параметр.
...
Рейтинг: 0 / 0
max_locks_per_transaction
    #39382392
qwwq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
max_locks_per_transaction
    #40008846
Kr_Yury
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подниму тему. Прошу не пинать. Все топики по теме на этом форуме посмотрел, но вопросы остались.
Срабатывает ОШИБКА: нехватка разделяемой памяти
HINT: Возможно, следует увеличить параметр max_locks_per_transaction.
Рекомендательные блокировки не используются, явные - не больше 10 на транзакцию. Хотелось бы уточнить такой момент: разные операторы update на записи одной таблицы создают разные блокировки или входят в одну? Если в одну, то даже в самой ресурсоёмкой функции апдейтится значительно меньше таблиц, чем значение max_locks_per_transaction=64. Какие ещё причины нехватки разделяемой памяти могут быть? Версия 10.10
...
Рейтинг: 0 / 0
max_locks_per_transaction
    #40008880
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kr_Yury,

поднимите max_locks_per_transaction до 256 и успокойтесь ).
обычно нехватка max_locks_per_transaction от избыточного партиционирования возникает.

а вообще посмотрите сколько у вас select * from pg_locks например когда такая ошибка вылезает может что то понятнее станет.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / max_locks_per_transaction
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]