Integration flows can fail at
run-time with a variety of errors. The cause of these failures could be
either Business errors or System errors.
Integration Flows fail, they are restarted from the beginning. On the
other hand, Asynchronous Integration flows when they error can
potentially be resubmitted/recovered from designated/pre-configured
milestones within the flow. These milestones could be persistence points
like queues topics or database tables, where the state of the flow was
last persisted. Recovery is a mechanism whereby a faulted Asynchronous
Flow can be rerun from such a persistence milestone.
SOA Suite 11g and AIA products provides various Automated and Manual
recovery mechanisms to recover from asynchronous fault scenarios. They
differ based on the SOA component that encounters the error. For
instance, recovering from a BPEL fault may be quite different than
recovering from a Resequencer fault. In this blog, we look at the
various Manual Recovery mechanisms and options available to an end user.
Manual recovery mechanisms require an Admin user to take appropriate
action on the faulted instance from the Oracle Enterprise Manager Fusion
Middleware Control [EM FMWC Console].
The intention of this blog
is to provide a quick reference for Manual Recovery of Faults within the
SOA and AIA contexts. It aims to present some of the valuable
information regarding Manual recovery in one place. These are currently
available across many sources such as SOA Developers Guide, SOA Admin
Guide, AIAFP Developers Guide and AIAFP Infrastructure and Utilities
Next we look at the various Manual recovery mechanisms
available in SOA Suite 11g and AIA, starting with the BPEL Message
BPEL Message Recovery
understand the BPEL Message Recovery, let us briefly look into how BPEL
Service engine performs asynchronous processing. Asynchronous BPEL
processes use an intermediate Delivery Store in the SOA Infrastructure
Database to store the incoming request. The message is then picked up
and further BPEL processing happens in an Invoke Thread.
Invoke Thread is one among the free threads from the ‘Invoke Thread
Pool’ configured for BPEL Service Engine. The processing of the message
from the delivery Store onwards until the next dehydration in the BPEL
process or the next commit point in the flow constitutes a transaction.
Figure below shows at a high level the Asynchronous request handling by
BPEL Invoke Thread. Read the complete article here.
SOA & BPM Partner Community
regular information on Oracle SOA Suite become a member in the SOA
& BPM Partner Community for registration please visit www.oracle.com/goto/emea/soa (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.
Blog Twitter LinkedIn Facebook Wiki Mix Forum