Wednesday Mar 14, 2012

Enterprise-class SOA on Exalogic... what, why and how?

Exalogic A-Team member Rupesh Ramachandran has recently blogged about his OpenWorld 2011 talk on enterprise-class SOA systems on Exalogic. He covers some of the basic "what, why, and how" questions about Exalogic. Please follow this link to the A-Team Exalogic blog to read more.

Friday Mar 09, 2012

SOA 11g & SAP – Single Channel/Program ID for Multiple IDOCs

When integrating with SAP using the Oracle 11g Application Adapter, it may be desirable to simplify integrations requiring a large number of IDOCs to leverage a single channel/SAP Program ID for multiple IDOC types.  However, the standard practice for the Application Adapter is to create a separate channel for each inbound service (aka, single channel/SAP Program ID for a single IDOC type).  The following write-up will illustrate a way to allow multiple IDOCs to flow to a single Application Adapter Channel.[Read More]

Thursday Feb 09, 2012

Analyzing Thread Dumps in Middleware - Part 4

This posting is the fourth and final section in the series Analyzing Thread Dumps in Middleware

In this post, we will see a new version of TDA (Thread Dump Analysis) tool developed by the author of this blog (Sabha Parameswaran in collaboration with his colleague, Eric Gross, also from Oracle A-Team) and its capabilities as well as some real world samples of thread dump analysis before concluding the series.

Analyzing Thread Dumps - Series:

Part 4: TDA A-Team and real world samples

Part 3: TDA tools

Part 2: How to capture and analyze Thread Dumps, navigate lock chains

Part 1: Basics of Thread states and thread locking

[Read More


Wednesday Feb 08, 2012

Analyzing Thread Dumps in Middleware - Part 3

This posting is the third section in the series Analyzing Thread Dumps in Middleware.

In this post, we will discuss some of the tools that can help with thread dump analysis as well as their limitations. In the next and final section in this series, we will look a new tool developed by the author of this blog in collaboration with his colleague in Oracle to fill the gaps mentioned with some of existing TDA tools in general as well as look at some real world thread dump analysis.


Analyzing Thread Dumps - Series:

Part 3: TDA tools

Part 2: How to capture and analyze Thread Dumps, navigate lock chains

Part 1: Basics of Thread states and thread locking

[Read More


Analyzing Thread Dumps in Middleware - Part 2

This posting is the second section in the series Analyzing Thread Dumps in Middleware

This section details with when and how to capture and analyze thread dumps with special focus on WebLogic Application Server related thread dumps as well as some tips and pointers and what to look for and optimize. The next post will go into tools that can help automate thread dumps analysis, some real world examples and limitations of thread dumps.

Analyzing Thread Dumps - Series:

Part 2: How to capture and analyze Thread Dumps, navigate lock chains

Part 1: Basics of Thread states and thread locking

[Read More


Analyzing Thread Dumps in Middleware - Part 1

How to analyze Thread dumps, for improving Middleware Performance (at App Server or Application level) as well as for general troubleshooting? 

This is part 1 of a series of posts on how to analyze thread dumps. In this post, we will go over basics of thread states and thread locking. In the following posts, we will drill deeper into capturing and analyzing Thread Dumps with special look into WebLogic Application Server specific thread dumps. 

Please see my blog for more details.


Tuesday Feb 07, 2012

11g purging white paper

Its finally released!!! The 11g white paper on purging is now readily available on OTN. This white paper has been written by Michael Bousamra of Oracle SOA development with contributions from me and Sai of SOA development. You can find the 11g white paper here.

As always comments welcome!

Deepak

Friday Feb 03, 2012

Configure Oracle Adapter Threads in SOA 11G

In in earlier posting, I mentioned you can configure multiple threads of inbound (polling) adapters of Oracle SOA. However, the ways to configure multiple threads vary between adapters and product versions, and the information scatter cross multiple documentations. Hence it is worth to consolidate them here. 

Please read my blog Configure Oracle Adapter Threads in SOA 11G at BlogSpot for more details.[Read More]

Wednesday Feb 01, 2012

Retrieve BPEL payload from the database

Given an instance id, how to get the payload used to invoke the BPEL, from the dehydration database (called SOA infrastructure database in 11G)?

You have two options, each with its pros and cons ...

Please read my blog at BlogSpot for more details ...[Read More]

Skipping an unnecessary step

Say you have a simple BPEL process that gets messages from JMS queue through a JMSAdapter, transforms the message, and then calls a down stream service via SOAP.

For such a simple BPEL process, are there any optimization that can be done for performance?

The answer is yes. And the low hanging fruits can be picked from layer between the inbound JMSAdapter and BPEL process.

Please read my blog Skipping an unnecessary step at BlogSpot to find out how to optimize the performance for this scenario.

[Read More]

Wednesday Dec 07, 2011

Neat pro-tip for getting the ECID in BPEL

A neat trick for getting your ECID in a BPEL process.[Read More]

Tuesday Nov 29, 2011

List of all states from COMPOSITE_INSTANCE, CUBE_INSTANCE, DLV_MESSAGE tables

In many of my engagements I get asked repeatedly about the states of the composites in 11g and how to decipher them, especially when we are troubleshooting issues around purging. I have compiled a list of all the states from the COMPOSITE_INSTANCE, CUBE_INSTANCE, and DLV_MESSAGE tables. These are the primary tables that are used when using BPEL composites and how they are used with the ECID. 

Composite State Values


COMPOSITE_INSTANCE States

State Description
0 Running
1 Completed
2 Running with faults
3 Completed with faults
4 Running with recovery required
5 Completed with recovery required
6 Running with faults and recovery required
7 Completed with faults and recovery required
8 Running with suspended
9 Completed with suspended
10 Running with faults and suspended
11 Completed with faults and suspended
12 Running with recovery required and suspended
13 Completed with recovery required and suspended
14 Running with faults, recovery required, and suspended
15 Completed with faults, recovery required, and suspended
16 Running with terminated
17 Completed with terminated
18 Running with faults and terminated
19 Completed with faults and terminated
20 Running with recovery required and terminated
21 Completed with recovery required and terminated
22 Running with faults, recovery required, and terminated
23 Completed with faults, recovery required, and terminated
24 Running with suspended and terminated
25 Completed with suspended and terminated
26 Running with faulted, suspended, and terminated
27 Completed with faulted, suspended, and terminated
28 Running with recovery required, suspended, and terminated
29 Completed with recovery required, suspended, and terminated
30 Running with faulted, recovery required, suspended, and terminated
31 Completed with faulted, recovery required, suspended, and terminated
32 Unknown
64 -




CUBE_INSTANCE States

State Description
0 STATE_INITIATED
1 STATE_OPEN_RUNNING
2 STATE_OPEN_SUSPENDED
3 STATE_OPEN_FAULTED
4 STATE_CLOSED_PENDING_CANCEL
5 STATE_CLOSED_COMPLETED
6 STATE_CLOSED_FAULTED
7 STATE_CLOSED_CANCELLED
8 STATE_CLOSED_ABORTED
9 STATE_CLOSED_STALE
10 STATE_CLOSED_ROLLED_BACK


DLV_MESSAGE States

State Description
0 STATE_UNRESOLVED
1 STATE_RESOLVED
2 STATE_HANDLED
3 STATE_CANCELLED
4 STATE_MAX_RECOVERED

Since now in 11g the Invoke_Messages table is not there so to distinguish between a new message (Invoke) and callback (DLV) and there is DLV_TYPE column that defines the type of message:

DLV_TYPE States


State Description
1 Invoke Message
2 DLV Message

MEDIATOR_INSTANCE

STATE Description
 0  No faults but there still might be running instances
 1  At least one case is aborted by user
 2  At least one case is faulted (non-recoverable)
 3  At least one case is faulted and one case is aborted
 4  At least one case is in recovery required state
 5 At least one case is in recovery required state and at least one is aborted
 6 At least one case is in recovery required state and at least one is faulted
 7 At least one case is in recovery required state, one faulted and one aborted
 >=8 and < 16
 Running
>= 16 
 Stale

In my next blog posting I will walk through the lifecycle of a BPEL process using the above states for the following use cases:

- New BPEL process - initial Receive activity

- Callback BPEL process - mid-level Receive activity

As always comments and questions welcome!

Deepak

Wednesday Nov 02, 2011

What BPM adds to SOA

 

We get a lot of questions about the differences between BPEL and BPMN (SOA and BPM) - when to use each, the relative strengths and weaknesses, etc.  This article provides an overview of the differences and similarities.

READ MORE >>

Tuesday Nov 01, 2011

Using the Database as a Policy Store for SOA 11g

 

As more and more customers of SOA 11g move to production, we have been asked often about the recommendations for a PolicyStore for SOA 11g in production. This post addresses the various policy store options, helps evaluate the pros and cons of each of these options and describes the configuration steps required for using the database as a policy store in SOA 11g. 

READ MORE >>


Thursday Sep 29, 2011

Application Adapter Troubleshooting 101 – 11.1.1.4 (PS3) or Higher

One of the nice capabilities of Oracle SOA Suite 11g is the ability to integrate with various packaged applications via Java EE Connector Architecture (JCA) adapters. These adapters include OracleAS Adapter for PeopleSoft, OracleAS Adapter for SAP R/3, OracleAS Adapter for Siebel, and OracleAS Adapter for J.D. Edwards OneWorld. Although the installation for the application adapters is well documented on the Oracle Fusion Middleware On-line Library, it is common to miss certain aspects of the installation ranging from missing .jar files to misconfiguration of the deployable adapter. When troubleshooting a misconfiguration, there are a common set of validation steps that must be conducted before venturing into more complex troubleshooting. The following will detail the common set of validation steps plus provide a utility that can be run from the command-line that will validate your installation.

[Read More]
About


This is the blog for the Oracle FMW Architects team fondly known as the A-Team. The A-Team is the central, technical, outbound team as part of the FMW Development organization working with Oracle's largest and most important customers. We support Oracle Sales, Consulting and Support when deep technical and architectural help is needed from Oracle Development.
Primarily this blog is tailored for SOA issues (BPEL, OSB, BPM, Adapters, CEP, B2B, JCAP)that are encountered by our team. Expect real solutions to customer problems, encountered during customer engagements.
We will highlight best practices, workarounds, architectural discussions, and discuss topics that are relevant in the SOA technical space today.

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today