Can U Explain JDBC Adapter Transaction types..?

Answer Posted / bhokalibaba

While reading this material please do not confuse a Transaction with an Operation. A transaction might consist of multiple operations like select, insert, delete,update etc. Also multiple operations can be of two types:

A series of operations i.e operations taking place one after the other and are inter-related.
A batch of operations which takes place concurrently all together.

Description:
Some transactions involve a series of related operations, not just one single operation always. In webmethods such multiple operations are performed even using a single adapter service or a flow service or a Java service or in multiple steps in a flow service.

There is a loophole in such kind of transaction if the different operations are performed in different DB servers not in same DB server:

The webmethods makes use of multiple connections in one service itself, in this case.

If either of the operation fails in the transaction, the other operations which have been already performed in other DB servers will not be notified for roll back. This would result in incomplete transaction.

To get rid of this problem we have something called 2-Phase commit. That is whenever such multiple operations occur in multiple, distributed DB servers, they(the operations) occur in 2 phases. And also the operations are monitored by a coordinator.

The coordinator asks the data-source of the operation if it is ready to commit the operation in so called Prepare Phase.
If the operation is ready to be committed, the operation gets committed in the data-source in so called Commit Phase.

If not, then the coordinator rolls back all the previous operations from the DB servers to avoid an incomplete transaction from happening.

This concept of multiple operations in multiple, distributed DB servers in one single transaction belongs to DB not to webmethods. It's just webmethods supports such kind of transaction using so called XA_Transaction type of connection.

XA transaction stands for distributed transaction. It is also called Global Transaction.

Local transactions differ from XA_Transaction in using one single connection rather than multiple, distributed Database servers to perform a series of operations. In local transactions, it is not a big deal to commit all operations or roll back the operations together in case of a failure in any operation, as all the operations take place in one single data-source in one single DB server. So coordinator is also not required in local transactions.


No Transaction: If a connections is of type ''no connection'' then even if an operation fails,it does not matter, the other operations in the transaction will be committed. This is because such transactions have auto-commit capability only, no rolling back.

Is This Answer Correct ?    13 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

in filepooling process the document is not updated in target location means its in error directory how to achieve this problem?

2243


When we use repeate, exit flow steps?

587


can anyone explain in brief about TN Consloe and Webmethods...? As well as All flow steps in webmethods: Branch Repeat Loop Sequence (explain also Try -Catch block for error Handling)

1406


When we use repeate flow steps?

595


how to configure sap adapter 4.1

5261






post me important interview question on webmethods

2280


How many interfaces you implemented sofar?

682


If I have a parent sequence with the property set- exit on success, and the try sequence block set to exit on failure, and the catch sequence block too set to failure, what is the result?

635


Explain about pub-sub architecture?

618


How many kinds of log files in webmethods?

588


can any one please post Q and Ans for Trading Networks in webMethods

1992


What are the advantages of eai?

645


Explain about pub-sub architecture, where do you implemented this?

568


how to configure sap adapter6.1

1954


How we can catch exception error on run time mode using flow language in webmethods?

650