Страница 1 из 1

lock manager out of room

Добавлено: 03 фев 2006, 12:32
Naidenov
Здравствуйте.
В процессе восстановления БД возникла ошибка lock manager out of room. Причем в лог-файл gbak отписался о успешном восстановлении практически всех объектов (не были восстановлены только 2 внешних ключа), но в IBExpert виден только десяток генераторов да и только. В чём причина появления этой ошибки?
БД восстанавливалась локально. ОС Win 2000 SP4; NTFS;
Server: FB Super 1.5.2.4731
DataBase: 6 Gb

Добавлено: 04 фев 2006, 00:47
dimitr
Увеличить LockMemSize в конфиге?

Добавлено: 06 фев 2006, 13:50
Naidenov
Чуть раньше уже кто-то обращался с подобной проблемой и именно ты давал аналогичные советы.
dimitr писал(а):Увеличить LockMemSize в конфиге?
Я этот топик прочел. Только там ничего конкретного не говориться именно о ПРИЧИНАХ возникновения такой ситуации. К тому же, очень хотелось бы хотя бы ориентировочно понимать как выставлять значение параметра LockMemSize в зависимости от размера БД. Поэтому, собственно, повторно и написал о проблеме!

Добавлено: 06 фев 2006, 14:39
dimitr
Причина проста - не хватает памяти для лок-таблицы. Однако, на винде такого быть при нормальных условиях не должно, т.к. сервер должен сам расширять лок-таблицу при необходимости. Кроме того, суперсервер не использует блокировки страниц, так что такая проблема обычно удел классика. Вывод - одному богу известно, с чем это связано. Скорее всего, баг в коде лок-менеджера.

Добавлено: 06 фев 2006, 14:45
Merlin
dimitr писал(а):Причина проста - не хватает памяти для лок-таблицы. Однако, на винде такого быть при нормальных условиях не должно, т.к. сервер должен сам расширять лок-таблицу при необходимости.
Не в интересах правды, а в интересах истины. В конфиге в комментариях сказано, что расширяет только классика. И, помнится, я к тебе когда-то тоже приставал насчёт формулки расчёта, чтоб не влиять с выделением 10 раз по чайной ложке на быстродействие в процессе, а отстегнуть примерно сколько нужно сразу. И ты даже мне её сказал, а я потом забыл :)

Добавлено: 06 фев 2006, 18:12
dimitr
Да, супер не расширяет. Но в нем и локов на порядок меньше. А для классика формула проста: <кол-во страниц базы> * <кол-во коннектов> * 100 байт.