Personal tools
You are here: Home DB2 Problem Resolution Replication Problem Capture program warm start failed
Navigation
Log in


Forgot your password?
 
Document Actions

Capture program warm start failed

The Capture program warm start failed because existing data is too old



1.1    Error message


ASN0121E The Capture program warm start failed because existing data is 
too old. The Capture program will terminate.

or

ASN0101W The Capture program warm start failed because existing data is 
too old; a cold start will be attempted.


1.2    Possible causes


The time of the warm start information exceeded LAG_LIMIT.
LAG_LIMIT is a capture parameter that indicates the number of minutes that the Capture program is allowed to lag when processing log records before it shutdowns. During peak load intervals/periods, a full refresh can take advantage over updates.

In case capture has been started with WARMNS, it will not attempt a cold start and the message ASN0121E will be returned followed by a capture program  terminate. In case it has been started with WARMSA or WARMSI, it will return the message ASN0101W and a cold start will occur.


1.3    Investigating


Step 1: Find out what is the current capture lag

The lag is the gap of time between current timestamp and the capture synchtime, which is the timestamp until when capture has processed all the transaction logs. To calculate capture lag run the select below:

db2 "select second(current timestamp - synchtime) + \
((minute(current timestamp) - minute(synchtime)) * 60) + \
((hour(current timestamp) - hour(synchtime)) * 3600) + \
((days(current timestamp) - days(synchtime)) * 86400) as capture_lag, \
' seconds' from asn.ibmsnap_register where global_record='Y' with ur"

Output:

CAPTURE_LAG 2
----------- --------

      700000  seconds

  1 record(s) selected.

NOTE: This select query will return current capture lag in SECONDS.


Step 2: Find out what is the lag_limit setting.

LAG_LIMIT is a parameter that can be provided at capture start time. You can try to find out the value of this parameter looking at the capture LOG  file at the moment it started:

ASN0529I  "Capture" : "ASN" : "Initial" : The value of "LAG_LIMIT" was \
set to "10080" at startup by the following method: "IBMSNAP_CAPPARMS".


Or issue the command below:

asnccmd capture_server=ESDWBB01 qryparms

Output:

2008-03-19-19.00.55.809336 ASN0521I  "AsnCcmd" : "ASN" : "Initial" : 
The QRYPARMS command response: "LAG_LIMIT" was set to "10080" by the
following method: "PARAMETERS TABLE".


NOTE: This parameter corresponds to the lag_limit in MINUTES.


1.4    Resolution


To solve the problem, you can try to increase the LAG_LIMIT parameter in the capture start command to a value greater than the current capture lag in minutes. For example:

asncap capture_server=ESDWBB01 lag_limit=12000 startmode=warmns


However, if the lag is too big and capture would take longer to process the pending logs than performing a full refresh, it can be easier to start capture in cold mode and let apply perform a full refresh than increasing the lag limit and waiting until it processes all transaction logs. To start capture in cold mode you can run:

asncap capture_server=ESDWBB01 startmode=cold


NOTE: Be careful! Some database are VERY BIG and a COLD start is NOT recommended.

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





Polls