Dehydration Store
Dehydration Store
Dehydration
Storing the current status of the BPEL process(i.e. long running process, asynchronous
process) into the database tables is known as dehydration
SOA_INFRA schema is the dehydration store which contains tables to hold the meta
data of the process.
Why Dehydration
Long running process or processes waiting for response consumes memory and CPU
While waiting for the response the bpel engine can store the process, thus freeing up
server resources.
Over the life cycle of the BPEL instance, the instance with the current state of execution
may be saved in database.
Asynchronous Process
Transient Process: Oracle BPEL server dehydrates the process instance only at the end
of the process. If server crashes in middle of the running process instance, the instances
will not be visible in EM. The synchronous process you design in Oracle JDeveloper is an
example of a transient process.
Durable Process: Oracle BPEL Server dehydrates the process instance in-flight at all midprocess
breakpoint and non-idempotent activities, plus the end of the process. When the server crashes,
this process instance appears in Oracle BPEL Control up to the last dehydration point
(breakpoint activity) once the server restarts. If the server crashes before the process instance
reaches the first midprocess breakpoint activity, the instance is not visible in Oracle BPEL
Control after the server restarts.This process type incurs one or more dehydration points in the
database during execution because of the following activities:
Receive activity
OnMessage branch in a pick activity
OnAlarm branch in a pick activity
Wait activity
Instances of durable processes can be saved in-flight (whether they complete normally or abnormally).
These processes are typically long-living and initiated through a one-way invocation.