Capture started with SQLCODE is "-2657", Apply started got ASN1051W with The error code is "4A5102"
Capture started with error :
2011-05-25-02.13.51.962930 <CWorkerMain> ASN0100I CAPTURE "ASN" : "WorkerThread" : The Capture version "9.7.3" program initialized successfully.
2011-05-25-02.13.51.963004 <CWorkerMain> ASN0109I CAPTURE "ASN" : "WorkerThread". The Capture program has successfully initialized and is
capturing data changes for "71" registrations. "0" registrations are in a stopped state. "0" registrations are in an inactive state.
2011-05-25-02.13.51.977627 <logrdDB2LUW::readTheLog> ASN8041D "Capture" : "ASN" : "WorkerThread" : db2LogRead API is sending us
backwards in theDB2 Log: First LSN is "0000:0000:0001:d9b7:65d6" while Next Start LSN is "0000:0000:0000:0000:0000"
2011-05-25-02.13.51.977672 <logrdDB2LUW::readTheLog> ASN0005E CAPTURE "ASN" : "WorkerThread". The Capture program encountered an error when reading the DB2 log.
The log sequence number is "0000:0000:0001:D9B7:65D6", the SQLCODE is "-2657", and the reason code is "".
2011-05-25-02.13.53.045580 <asnThread::stop> ASN0590I "Capture" : "ASN" : "Initial" The thread "Initial" received return code "910" from the exiting thread "WorkerThread".
2011-05-25-02.13.55.052198 <asnThread::stop> ASN0590I "Capture" : "ASN" : "Initial" The thread "Initial" received return code "2011" from the exiting thread "AdminThread".
2011-05-25-02.13.55.052316 <asnThread::stop> ASN0590I "Capture" : "ASN" : "Initial" The thread "Initial" received return code "2011" from the exiting thread "PruneThread".
2011-05-25-02.13.55.057625 <Asnenv:delEnvIpcQRcvHdl> ASN0595I "Capture" : "ASN" : "Initial" The program removed an IPC queue with keys"(0x30000049)".
2011-05-25-02.13.55.057680 <asnThread::stop> ASN0590I "Capture" : "ASN" : "Initial" The thread "Initial" received return code "0" from the exiting thread "HoldLThread".
2011-05-25-02.13.55.057758 <erWhatSignal> ASN0591I "Capture" : "ASN" : "HoldLThread" The thread "HoldLThread" received "Handled" signal"SIGUSR2".
2011-05-25-02.13.56.058747 <_asnCapture> ASN0008I CAPTURE "ASN" : "Initial". The Capture program was stopped.
checking SQLCODE "-2657"
[db2inst1@oc2335676640 license]$ db2 ? sql2657
SQL2657N The Asynchronous Log Reader requires log file "<name>" which
does not currently reside in the database log directory.
Explanation:
The Asynchronous Log Reader requires log records from the specified log
file. The specified log file does not currently reside in the database
log directory.
User response:
Move the specified log file into the database log directory of the
database being asynchronously read. If the database log path was
changed, the log file might be found in the old log path. Resubmit the
call to the Asynchronous Read Log API.
[db2inst1@oc2335676640 license]$
checking db2diag.log,and found the 1 LOG file missing
2011-05-24-02.13.25.573349+480 E4143176A488 LEVEL: Warning
PID : 9896104 TID : 13881 PROC : db2sysc 0
INSTANCE: db2inst1 NODE : 000 DB : FHAB
APPHDL : 0-29 APPID: *LOCAL.db2inst1.110514084346
AUTHID : db2inst1
EDUID : 13881 EDUNAME: db2agent (FHAB) 0
FUNCTION: DB2 UDB, data protection services, sqlpALR_OpenExtent, probe:0
MESSAGE : ADM1500W DB2 is unable to locate log file "S0000426.LOG".
find the logs from archive log path,capture started successfully
however,APPLY started with a error :
2011-05-26-10.24.14.653468 <CPGPTST(4A/02)> ASN1051W APPLY "APP" : "WorkerThread" : The Apply program detected a gap in
changed data between the source table "DB2INST1.FH01" and the target table. The error code is "4A5102".
[Data Collected] ---------------- 1. db2diag.log 2. capture/apply log 3. asnanalyze.out
Checking error code ASN1051W
[db2inst1@oc2335676640 license]$ db2 ? ASN1051W
ASN1051W APPLY "<apply_qualifier>" : The Apply program detected a gap
in changed data between the source table "<table_owner.table_name
>" and the target table. The error code is "<error_code>".
Explanation:
The Apply program detected that the Capture program skipped logged
changes or deleted rows from CD tables before the Apply program could
copy the data. For example, the Capture program was cold started or
retention limit pruning occurred.
User response:
Look for message ASN0100I to determine if the Capture program was
started recently. If so, look for ASN0529I to determine if the value of
the STARTMODE parameter was COLD. If so, the Apply program performs a
full refresh of target tables unless full refresh has been disabled. If
you find that the Capture program performed retention limit pruning of a
CD table, the corresponding subscription may need a full refresh to
synchronize the target table with the source.
[db2inst1@oc2335676640 license]$
Resoltion:
1. Update DISABLE_REFRESH=0 in IBMSNAP_REGISTER table for the related tables. 2. Start Capture with STARTMODE=COLD 3. Start Apply (if there is a large amount of data to be copied to the target tables during a full refresh customer may consider using loadxit=y). 4. Update DISABLE_REFRESH=1 in IBMSNAP_REGISTER table for the related tables.