Recovery tab
The recovery is a temporary mode that indicates to Talend Change Data Capture that the next time it is started, instead of continuing the distribution to the next sequence in the journal, it must act according to the nature of the recovery requested.
The recovery you specify in a model applies to all the tables of the model.
None is the default recovery type. Once the distribution starts, and the recovery has been taken into account by the Talend Change Data Capture engine, the recovery type defined in the parameters goes back to None.
The following sections detail the recovery types.
None
This setting is used to cancel a recovery that was mistakenly specified, before it is taken into account by the Talend Change Data Capture engine.
From sequence
This setting performs a recovery for a specific sequence, i.e., at a specific point of time, as the journal contains database transaction records in a sequence expressed in absolute time.
When you select the From sequence option, a window is displayed showing the available receivers on the source and their characteristics.
To specify a recovery from a specific sequence, select the desired receiver and enter the sequence number in the Sequence field.
If you want to specify a recovery just after sequence number x, just add the + character after the sequence number x.
For example, enter 13152+ to start recovery after sequence 13152, even if sequence 13153 does not yet exist.
Use case:
If you perform a recovery pointing to a UP-type sequence (Update Before which always precedes a UP-Update Past sequence), the Talend Change Data Capture engine backs by 1 to take into account the UB sequence.
If an error occurs in an Update, the error will automatically be linked to the UB sequence.
So, if you wish to skip it, do not advance it by 1, because you would fall on the UP sequence. As the engine would back to the UB, this would mean no recovery. However, you can specify the failed sequence followed by the + symbol to skip to the next one.
Blobs-type sequences, which you should take into account for recoveries, occur in Windows-type journals (SQL Server, Oracle...). If the recovery point is in the middle of a series of blobs, the engine automatically backs to the Insert, Update or Delete instruction which generated these blobs. You can also check the content of the Journal with the journal display button.
Load
The Load recovery type performs an initial loading of the tables on the target using the source tables. It is processed at the beginning of the Job before the Job on the journal is executed.
During the Load recovery operation, the following procedure is applied for each Talend Change Data Capture file:
-
Store the sequence number of the last sequence in the current receiver.
-
Open the source table.
-
Send (depending on the Clear before extract option in the distributed table parameters) the CLRPFM instruction (DELETE FROM TABLE in SQL).
-
Read the source table records and send them as transaction records to add to the target table.
-
At the end of the source table, go back to the sequence number stored in the first step (same as a recovery from sequence).
If the source and/or target programs are interrupted, or there is a break in the communication, Talend Change Data Capture resumes record transmission from the point where it stopped.