Troubleshooting
Problem
Db2 11.5.6 で、組み込み SQL (Embedded SQL: ESQL) を実行するアプリケーション・プロセスのメモリーがリークすることがあります。リークの結果、以下のような問題の発生が報告されています。
- アプリケーションが追加のメモリーを割り当てできずエラーを返す
- アプリケーションを含むシステムのパフォーマンスが低下する
- アプリケーションが動作するインスタンスの db2diag.log にメモリー・エラーが大量に記録される
- システムのスワップ・スペースの使用量が増大する
Cause
Db2 11.5.6 では、組み込み SQL アプリケーションが SSL/TLS の接続処理で使用する小さなメモリーを解放しない障害があります。このメモリーは SSL/TLS の使用有無にかかわらず割り当てられるため、暗号化を利用しないアプリケーションでも接続処理の都度メモリーがリークします。
この問題は APAR IT37963 として報告され、11.5.7 で修正されています。
Environment
Db2 11.5.6 で組み込み SQL を実行するアプリケーション・プロセス
Diagnosing The Problem
メモリー・リークのために ulimit (d) に抵触するなど、アプリケーションが追加のメモリーを割り当てられない場合、db2diag.log に以下のようなエントリーが記録されます。
2021-12-12-10.05.07.551955+540 I1989A663 LEVEL: Error (OS)
PID : 7340242 TID : 12957 PROC : myapp
INSTANCE: db2inst1 NODE : 000 DB : SAMPLE
APPHDL : 0-12246 APPID: 192.168.0.10.8696.220412010507
AUTHID : DB2INST1 HOSTNAME: db2client.example.com
EDUID : 1
FUNCTION: DB2 UDB, SQO Memory Management, sqloLogMemoryCondition, probe:100
CALLED : OS, -, malloc
OSERR : ENOMEM (12) "現在使用可能なメモリーが不足しています。"
MESSAGE : Private memory and/or virtual address space exhausted, or data ulimit
exceeded
注:db2diag.log への出力が止まり、sqloLogMemoryCondition の記録が syslog へ出力されることもあります。
また、メモリー・リークが発生しているアプリケーション・プロセスに対して db2pd -memblock を実行すると、ソース・ファイル名 sqlccssl.C、行番号 3151 でのメモリー割り当てが増加していることが確認できます。
$ db2pd -memblock pid=<アプリケーションのプロセスID> sort
Memory blocks sorted by size:
PoolID PoolName TotalSize(Bytes) TotalCount LOC File
0 503363319 9869869 3151 sqlccssl.C
0 32800 1 4665 sqleu_client.C
Resolving The Problem
この問題の回避策はありません。アプリケーションが動作する Db2 に対して、問題が修正されている 11.5.7 以降を適用してください。11.5.7 は以下のページからダウンロード可能です。
Document Location
Worldwide
[{"Type":"MASTER","Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"ARM Category":[{"code":"a8m0z000000GozAAAS","label":"Memory"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"11.5.6"}]
Was this topic helpful?
Document Information
Modified date:
15 August 2023
UID
ibm16571519