Memory resources used by the DB2® database agent proxying requests from the IBM®Traffic Information Hub application can occasionally become exhausted. When this happens, SQL code errors -954 or -4228 are logged in the DB2 db2diag.log file.
SQL code errors -954 or -4228 are logged as a message in the DB2 db2diag.log file. The db2diag.log file is located in the sqllib/db2dump/ directory in the DB2 administrator home directory on the database server. The logged message is similar to the following example:
2011-07-13-13.13.00.882694+060 I185789664E583 LEVEL: Error PID : 2268 TID : 47690847086912PROC : db2sysc 0 INSTANCE: db2inst1 NODE : 000 DB : TIH_HS APPHDL : 0-5203 APPID: 09A151C3.93AC.110713120249 AUTHID : DB2INST1 EDUID : 54 EDUNAME: db2agent (TIH_HS) 0 FUNCTION: DB2 UDB, access plan manager, sqlra_fp_alloc, probe:100 RETCODE : ZRC=0x8B0F0001=-1961951231=SQLO_NOMEM_APPH "No memory available in 'Application Heap'" DIA8301C No memory available in the application heap.
Resolving the problem
Upgrade to the IBM Traffic Information Hub version 1.0.1 to minimize the occurrence of this issue.
To work around this issue if it does occur, avoid exhausting memory resources by periodically restarting the agent at a time when the IBM Traffic Information Hub activity is low. You do not need to restart DB2.
1. To determine the database name from the Common and Required Properties section of the WebSphere® console, click Data Sources > Trans.
2. Log in as the database administrator on the indicated node.
3. Obtain the IDs of the agents to be restarted by running the following commands, where TIH_HS is the name of the database that you obtained in step 1:
bash$ db2 list applications | grep TIH_HS | grep db2jcc1
When you run the commands, the results are similar to the following example:
DB2INST1 db2jcc_applica 155 09A1E419.0979.110712180257 TIH_HS 1 DB2INST1 db2jcc_applica 121 09A151C3.9030.110712175401 TIH_HS 1 DB2INST1 db2jcc_applica 153 09A1E419.0963.110712180236 TIH_HS 1 DB2INST1 db2jcc_applica 120 09A151C3.902F.110712175400 TIH_HS 1
4. Terminate the agents by running the following commands using the IDs returned in step 3:
bash$ db2 force application \(155, 121, 153, 120\)
The agents are automatically restarted.
Note: Some settings, such as reap time and unused time, can be modified according to the data publication rates of the environment.