When a PowerCenter workflow fails, it is the
part of the operations team’s responsibility to troubleshoot the issue and
successfully complete the workflow. A PowerCenter workflow fails when a task
(e.g. session) inside the workflow fails for various reasons. When the root cause of the issue
is understood and fixed the workflow has to be completed in such a way that
only the failed task and other tasks which are yet to run are executed.
Configuring the workflow for recovery helps you achieve this.
Workflow recovery allows you to
continue processing the workflow and workflow tasks from the point of
interruption. When you enable a workflow
for recovery, the Integration Service saves the workflow state of operation in
a shared location. The workflow state of operation includes the status of tasks
in the workflow and workflow variable values. You can recover the workflow if
it terminates, stops, or aborts. The workflow does not have to be running. You
can recover a workflow if the Integration Service can access the workflow state
of operation.
What is Workflow Recovery
Workflow recovery allows you to
continue processing the workflow and workflow tasks from the point of
interruption. During the workflow recovery process Integration Service access
the workflow state, which is stored in memory or on disk based on the recovery
configuration. The workflow state of operation includes the status of
tasks in the workflow and workflow variable values.
The configuration in Informatica
power centre includes.
1. Workflow
Configuration for Recovery
2. Session
and Tasks Configuration for Recovery
3. Recovering
the Workflow from Failure
1. Workflow Configuration For Recovery
To configure a workflow for
recovery, we must enable the below configurations in power centre
workflow for recovery or Configure the workflow to suspend
on task error.
Enable Recovery: When you
enable a workflow for recovery, the Integration Service saves the workflow
state of operation in a shared location. You can recover the workflow if it
terminates, stops, or aborts.
We can set up the automatic recovery in the workflow as shown in below image.
An optional High Availability (HA) license is required for this check box to
be available for selection. Without the HA option, workflows must be
recovered manually.
Suspend: When you
configure a workflow to suspend on error, the Integration Service stores the
workflow state of operation in memory. You can recover the suspended workflow
if a task fails.
You can fix the task error and
recover the workflow. If the workflow is not able to recover automatically
from failure with in the maximum allowed number of attempts, it goes to
'suspended' state.
|
Below image shows about setting workflow
to suspend on error:
2. Session and Tasks Configuration for Recovery
Each session or task in a
workflow has its own recovery strategy. When the Integration Service recovers a
workflow, it recovers tasks based on the recovery strategy of each task or
session specified. There are three different options available as below:
· Restart task
· Fail task and continue workflow
· Resume from the last checkpoint
Restart task: This recovery
strategy is available for all type of workflow tasks. When the Integration
Service recovers a workflow, it restarts each recoverable task that is
configured with a restart strategy. You can configure Session and
Command tasks with a restart recovery strategy and other tasks have a restart
recovery strategy by default.
Fail task and continue workflow: It
is only available for session and command tasks. When the Integration
Service recovers a workflow, it does not recover the task. The task status
becomes failed, and the Integration Service continues running the workflow.
Resume from the last checkpoint: This
recovery strategy is only available for session tasks. The Integration Service
saves the session state of operation and maintains target recovery tables. If
the session aborts, stops, or terminates, the Integration Service uses the
saved recovery information to resume the session from the point of
interruption.
When you configure the session
recovery strategy to resume from the last checkpoint, Integration Service
stores the session state of operation in the shared location, $PMStorageDir.
And also it is written to the recovery tables (PM_RECOVERY, PM_TGT_RUN_ID,
PM_REC_STATE) to determine where to begin loading data to target tables, in
case of a recovery.
Below image shows the available
session recovery options:
Below image shows available
command task recovery options
3. Recovering the Workflow from Failure
Workflow can be either recovered in
two ways as described below:
Recovering Automatically:
If you have High Availability
(HA) licence and the workflow is configured to recover automatically as
described above, Integration service automatically attempts to recover the
workflow based on the recovery strategy set of each session or task in the workflow. If
the workflow is not able to recover automatically from failure with in the
maximum allowed number of attempts, it goes to 'suspended' state, which can be
then manually recovered.
Recovering Manually:
You can manually recover the
workflow or individual tasks with in a workflow separately. You can access the
options as shown in below image from the workflow manager or from the workflow
monitor.
Recover workflow: Continue
processing the workflow from the point of interruption.
Recover Task: Recover a
session but not the rest of the workflow.
Recover workflow from a task: Recover
a session and continue processing a workflow.
This technical post helps me to improve my skills set, thanks for this wonder article I expect your upcoming blog, so keep sharing.
ReplyDeleteRegards,
cognos Training in Chennai
Nice one ...
ReplyDelete
ReplyDeleteI appreciate your work on Informatica. It's such a wonderful read on Informatica.Keep sharing stuffs like this. I am also educating people on similar technologies so if you are interested to know more you can watch this:-
https://www.youtube.com/watch?v=56vMQ1lG-vc
very informative blog and useful article thank you for sharing with us Informatica Online Course
ReplyDeleteGreat presentation of Informatica form of blog and Informatica tutorial. Very helpful for beginners like us to understand Informatica course. if you're interested to have an insight on Informatica training do watch this amazing tutorial.:-https://www.youtube.com/watch?v=JX2KkZNaKu0
ReplyDeletei have a question , i want to know the resume point of session, when we have enabled resume from last checkpoint, next resumption point will be the 1st row of next commit interval or will it commit all the rows which IS has read before abruption of session?suppose session terminated at 12000 th row and commit interval is 10000, so in next resumption 120001th row will be read or 10001th row will be read??
ReplyDeleteIt should be 10001th record.
DeleteI feel Informatica and all it related aspects are very necessary to look for more information and above all provide solutions about getting to know about the right set of database complexities that exist.
ReplyDeleteInformatica Read Rest Api