How to Recover BPM Process Instances from a MDS 00054 Error in Oracle BPM 12.1.3 (Part 1) by Siming Mu




There is an issue in Oracle SOA Suite Fabric layer in version 11.1.x. and 12.1.3. The issue is documented in Bug# 20517579: “Composites Lost Completely after redeployment and server restart”. This bug is fixed in version 12.2.1. A few customers have run into this bug. Once this bug is encountered, BPM server usually shows “MDS 00054: The file to be loaded oramds:/deployed-composites/CompositeName_rev1.0/composite.xml does not exist” error during server startup. The composite is no longer visible in EM and all User Tasks from this composite are not visible in BPM Workspace either. The composite appears to be lost.

One work-around for this issue is deploying the same composite as a higher version. Or customers can manually un-deploy their problematic version of the composite using WLST script and then deploy the same composite again. In either case, customers will lose all running instances of this composite. If this outcome is not desirable, we need to find a way to recover all running instances.

This multi-part blog will present one way to manually recover those instances. To make this process more understandable to readers, a very simple BPM composite is used to take you through the processes of deployment/undeployment, reproduction of the bug# 20517579 and MDS 00054 errors, and finally steps to recover instances. Along the way, we will look at changes in MDS and SOAINFRA tables due to normal life cycles of the sample composite and bug# 20517579.

Even though this bug is fixed in 12.2.1, I think the information documented in this blog will provide a valuable resource for understanding MDS and SOAINFRA schema.

What happens in MDS when a composite is deployed?

First, let’s take a look what happens in MDS when a BPM composite is deployed. To do that, we need a tool like MDS Explorer. Before any BPM composite is deployed, your MDS should look empty similar to the following image.

Now we will deploy a very simple BPM composite to check for changes in MDS. We can use a BPM composite similar to the following for our testing purposes.

Notice that I created two human tasks but only have one interactive activity in my BPM process. We will only use human task 1 for now and the other one will be used to generate the MDS 00054 error later.

After deploy this composite, the MDS  should look like this: Read the complete article here.

SOA & BPM Partner Community

For regular information on Oracle SOA Suite become a member in the SOA & BPM Partner Community for registration please visit (OPN account required) If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn image[7][2][2][2] Facebook clip_image002[8][4][2][2][2] Wiki