|
Instance crash on db2 v 8.1.5
|
|||
---|---|---|---|
#18+
Мы используем DB2 Workgroup Server, v. 8.1, fixpack 5 на Windows 2003 Standart Edition. За короткий интревал времени у нас произошло несколько падений инстанса DB2. Сначала появлялась серия сообщений об ошибках в db2diag.log : ================= 2004-06-06-17.21.48.671000 Instance:DB2 Node:000 PID:2348(dbm.exe) TID:1696 Appid:none oper system services sqloSSemClose Probe:20 Unexpected system error 0x6 has occurred. This has been mapped to ZRC 0x83000006. PID:2348 TID:1696 Node:000 Title: SYSTEM ERROR DESCRIPTION The handle is invalid. ================= и некоторое время спустя (от часов до минут) без дополнительных сообщений в db2diag.log инстанс падает. Crash recovery после рестарта выполняется мгновенно и без проблем. Я открыла PMR, и получила сообщение от службы поддержки ИБМ следующее: > The one message that is appearing over and over again is the first > one listed above. That ZRC code indicatest that this is a "Resource > Capacity Error" in buffer pool services. Specifically, this is an > "SQLZ_RC_BPFULL" which means that there are no available buffer pool > pages. The associated SQLCODE is: > SQL1218N There are no pages currently available in bufferpool "". > Could you please tune your bufferpool size and then please let me > know if these messages persist? Thank you. Мне кажется это формальной отпиской, не решающей проблемы в нашем случае. Имеется 2 буфферпула по 500Мб каждый, раздельно для индексов и данных. Индесксный буферпул достаточен для кеширования всех индексов, буферпул данных вмещает около 25% всего объема базы. Все транзакции на update/insert достаточно малы (не более 20 рядов), все тяжелые запросы выполняются с UR isolation level. SQL_ELM_POOL_ASINC_DATA/INDEXES_WRITES и SQL_ELM_POOL_DATA/INDEXES_WRITES мониторятся постоянно, и они были почти равны в том числе непосредственно перед падением базы, так что мне кажется, что свободных страниц в буфферпуле всегда достаточно для замещения. В конце концов я изменила DB2NTWORKSET=1024,2560 на DB2NTWORKSET=1024,3072, и с тех пор (три недели) все работает без падений. Однако, я не уверена, что это не совпадение и проблема действительно решена, тем более что реальный объем памяти DB2 никогда не превышает 2 Gb У кого-нибудь есть идеи, соображения или советы? Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2004, 22:57 |
|
Instance crash on db2 v 8.1.5
|
|||
---|---|---|---|
#18+
Такое Unexpected system error 0x6 has occurred. This has been mapped to ZRC 0x83000006. я временами вижу у себя в логах (скажем, после рестарта домашней машины, если она была выключена некорректно), но на вид поведение СУБД совершенно нормальное. Но раз всплыла магическая цифра 2G, то хотелось бы твердо знать, что СУБД действительно не пытается выйти за рамки. Размер буферных пулов - это еще не все. Вот недавно читал текстик про хеш-джойны, там советуют настраивать память для DSS (TPC-H etc) в первом приближении так: объем, выделяемый под SHEAPTHRES, равен объему буферного пула (они не поделили его на индексный и "данновый"), а SORTHEAP = SHEAPTHRES / X где X - количество одновременно проводимых сортировок, но не менее 4 (причем оно в принципе небольшое: так, на тесте TPC-H, многопроцессорном сервере X = 8..9). И вообще - все это странно. Лично у меня если когда-то DB2 и падала, то никогда молча. Всегда километры всяких жалоб и мегабайты дампов. А system error 0x6, подозреваю, к падению системы не имеет отношения. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2004, 10:08 |
|
Instance crash on db2 v 8.1.5
|
|||
---|---|---|---|
#18+
Тебе IBMеры ответили, не что буферпулы маленькие, а что ОЗУ чтобы их разместить не хватает. Надо уменьшить размер буферпулов. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.07.2004, 12:58 |
|
Instance crash on db2 v 8.1.5
|
|||
---|---|---|---|
#18+
Тебе IBMеры ответили, не что буферпулы маленькие, а что ОЗУ чтобы их разместить не хватает. Надо уменьшить размер буферпулов. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.07.2004, 13:00 |
|
Instance crash on db2 v 8.1.5
|
|||
---|---|---|---|
#18+
dealkoТебе IBMеры ответили, не что буферпулы маленькие, а что ОЗУ чтобы их разместить не хватает. Надо уменьшить размер буферпулов. Системное сообщение о том, что нет возможности получить страницу в буфферпуле (дословно). Оно вполне легитимно возникает, например, когда пытаешь удалить много записей из таблички, где несколько хаотично разбросанных индексов ( а логов на это хватает). Де-факто, ДВ2 не может найти страницу для удаления. Ну и рекомендованная стандартная реакция на это сообщение - перезапустите или увеличьте буферпул. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.07.2004, 16:49 |
|
|
start [/forum/topic.php?fid=43&gotonew=1&tid=1606200]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
164ms |
get topic data: |
9ms |
get first new msg: |
7ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 272ms |
0 / 0 |