Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Не хватает памяти для кэша пакетов
|
|||
|---|---|---|---|
|
#18+
Добрый день ! DB2 9.1.2 64бит под CentOS 5 Приложения получают ошибку SQL0973N. В db2diag.log 2010-12-16-12.30.38.461917+000 I48398E518 LEVEL: Error PID : 26714 TID : 47484349760720PROC : db2agent (SAMPLE) INSTANCE: db2inst1 NODE : 000 DB : PB APPHDL : 0-1006 APPID: 172.16.10.36.7082.101216122257 AUTHID : SAMPLE FUNCTION: DB2 UDB, access plan manager, sqlra_cache_find_stmt, probe:10 RETCODE : ZRC=0x8B0F0007=-1961951225=SQLO_NOMEM_PCKCACHEH "No memory available in 'Package Cache'" PCKCACHESZ = AUTOMATIC Раньше стояло явно указанное значение - 20000 и проблем не было. В теории как я понимаю при переполнении кэша пакета он должен очищаться. Затраты на выполнение SQL подрастут но ошибки быть не должно. В жизни получается что этого не происходит. Я надеюсь что не совсем допилили автоуправление памятью. Поставил ручное управление - чёткое значение. Буду смотреть. Но это гипотеза. Подскажите плиз, с чем может быть связано то, что не очищается кэш пакета ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2010, 16:38 |
|
||
|
Не хватает памяти для кэша пакетов
|
|||
|---|---|---|---|
|
#18+
dealko, Это может означать две вещи: либо в кэше нет планов, которые не используются и которые, соответственно, можно выбросить, либо компиляция очередного пакета требует столько места, что его невозможно найти, даже выбросив часть пакетов. STMM имеет реактивный характер и его поведение не зависит от сиюминутных потребностей. Он периодически проверяет степень использования областей памяти за прошедшие несколько (5) минут и увеличивает (уменьшает) пулы соответственно. Если приложение запросит слишком много памяти, например, в пакетном кэше и получит ошибку, STMM об этом не узнает. Попробуйте дать STMM намек на желаемый размер кэша: update db cfg for <yourdb> using pckcachesz 20000 automatic ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2010, 22:00 |
|
||
|
Не хватает памяти для кэша пакетов
|
|||
|---|---|---|---|
|
#18+
mustaccio, Про алгоритм работы STMM понятно. Как можно посмотреть планы для каких SQL в кэше пакетов нужны в текущий момент ? Это планы выполняемых на текущий момент SQL операторов или что-то другое ? Нагрузка на систему была средненькой, не дотягивала до нагрузки в пиковые периоды. Я смотрел через db2top. Не было SQL-операторов больше обычного... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2010, 12:18 |
|
||
|
Не хватает памяти для кэша пакетов
|
|||
|---|---|---|---|
|
#18+
dealko Как можно посмотреть планы для каких SQL в кэше пакетов нужны в текущий момент ? Это планы выполняемых на текущий момент SQL операторов или что-то другое ? Попробуйте db2pd -d yourdb -dynamic -static Покажет все динамические и статические запросы и пакеты в кэше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2010, 16:09 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=37019473&tid=1602448]: |
0ms |
get settings: |
9ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
176ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 301ms |
| total: | 561ms |

| 0 / 0 |
