Personal tools
You are here: Home DB2 Problem Resolution Storage Transactions Log Full
Navigation
Log in


Forgot your password?
 
Document Actions

Transactions Log Full

Applications are using all primaries and secondary logs and the database stops to run.

A – Errors


A.1 - Error Command line


DIA3609C Log file was full.

A.2 - Messages on db2diag.log


2004-05-11-09.51.38.187000   Instance:DB2   Node:000
PID:1424(db2syscs.exe)   TID:2964
Appid:*LOCAL.DB2.040511075040
data_protection  sqlpgrsp   Probe:50   Database:DE_LPO4

Log Full -- active log held by appl. handle 6
End this application by COMMIT, ROLLBACK or FORCE APPLICATION.

2004-05-11-09.51.38.234000   Instance:DB2   Node:000
PID:1424(db2syscs.exe)   TID:2964
Appid:*LOCAL.DB2.040511075040
data_protection  sqlpWriteLR   Probe:80   Database:DE_LPO4
DIA3609C Log file was full.


B – Possible causes



Cause One - Applications without commit are using all primaries and secondary logs. If this error rarely happens, the better solution is to identify the application that is causing this problem, and force them off.

Cause Two - If this error is happening frequently, the increasing of  3 parameters(logsecond, logprimary, logfilsiz)  can be necessary, because the number of primary logs and second log are not enough to process all applications on that database.


C – Investigating



Check the db2diag.log file, and confirm if message is similar to the message above on section A. Check if the application is still running, you can find the application handle in the db2diag.log:

Log Full -- active log held by appl. handle 6
End this application by COMMIT, ROLLBACK or FORCE APPLICATION.

Application handle 6 is the application that is causing this problem. So, type the db2 command below to see if the application is still running.


db2 list applications | grep 6

If you see this application, you need to force it off, else you don’t need to take any action. But, it is recommended that you monitor the db2diag.log to see if this situation will repeat again. If this situations is frequently repeating, the increasing of some parameters(logsecond, logprimary, logfilsiz)  can be necessary.
 

D – Resolution



Causa one


Check if the application that is causing this problem still exists

 db2 list applications | grep apphadl

If the applications exists, so force them off

db2 “force application (apphandl)”

Cause Two


Step 1 - Stop all the DB2 UDB applications. The DB2 UDB command to stop all the applications is:

 db2 force applications all

Step 2 - Change the number of secondary log files in the DB2 UDB database configuration to a greater number such as 100 (default is 20).

db2 update db cfg for <dbname> using logsecond <value>

db2 update db cfg for <dbname> using logprimary <value>

db2 update db cfg for <dbname> using logfilsiz <value>


Step 3 - To see the database configuration settings, enter the following command in a DB2 UDB command window:
   
 db2 get db cfg show detail




Security Awareness
Would you like your company to implement gamification into your security awareness program?





Polls