Большинство параметров IBM Db2, которые задаются для хранения базы геоданных, должны задаваться с блокировкой.
Блокировки могут быть не общими, в зависимости от клиентского приложения и настройки базы данных. Помните, что проблема со временем может усугубляться. Db2 имеет параметры настройки, контролирующие размер списка блокировки (LOCKLIST), максимальный процент блокировок на приложение (MAXLOCKS), время ожидания получения блокировки (LOCKTIMEOUT), частота определения блокировки (DLCHKTIME) и поведение при отмене блокировки (DB2LOCK_TO_RB).
По умолчанию параметры LOCKLIST и MAXLOCKS имеют значение AUTOMATIC, т.е. они настраиваются автоматически. Это позволяет диспетчеру памяти Db2 динамически распределять память между потребителями. Автоматическая настройка происходит только в том случае, если в базе данных включена автонастройка памяти (SELF_TUNING_MEM=ON).
Для просмотра параметров списка блокировок используется следующая команда:
db2 get db cfg
Max storage for lock list (4KB) (LOCKLIST) = 50
Interval for checking deadlock (ms) (DLCHKTIME) = 10000
Percent. of lock lists per application (MAXLOCKS) = 22
Lock time out (sec) (LOCKTIMEOUT) = -1
Max number of active applications (MAXAPPLS) = AUTOMATIC
- LOCKTIMEOUT
Чтобы задать время ожидания получения блокировки в Db2, измените LOCKTIMEOUT.
- DLCHKTIME
Чтобы настроить интервал проверки блокировки, настройте DLCHKTIME.
- DB2LOCK_TO_RB
DB2LOCK_TO_RB определяет поведение транзакции, когда время ожидания блокировки превышает значение в LOCKTIMEOUT. По умолчанию по прошествии срока ожидания блокировки происходит откат запрошенной транзакции. Для баз геоданных в Db2 будет достаточно поведения по умолчанию.
Для значения реестра DB2LOCK_TO_RB используйте db2set и найдите DB2LOCK_TO_RB=.
Сведения о настройке этих параметров см. в документации для Db2 в IBM Knowledge Center.