Skip to Main Content

Integration

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Query on bpel.config.OneWayDelivery Property

user790116Apr 26 2012 — edited Feb 26 2020
Hello,

I have a query on bpel.config.OneWayDelivery Property.

Scenario : In case of any error in BpelProcess A , it will call BpelProcess B .So BpelProcessB will be called in the catchAll branch of Process A. After calling Process B, i am throwing a fault in Process A to rollback process A (as there is a DB adpater in it which i want to roll back). To invoke Process B in a separate transaction i set the bpel.config.transaction to requires new in the component section of composite.xml of process B. Please not Process B is ASynchronous process. Now :

Case 1: By setting only bpel.config.transaction property to 'requiresnew'.

Process A gets error, it calls Process B and it itself get rolledback (because of throw activity after a call to Process B). Now in the instance of Process A i am not able to see the trace of Process B. Only Process B name is appearing, also Process B didn't get executed at all or might be rolledback along with process A (not sure on this).


Case 2: By setting only bpel.config.transaction property to 'requiresnew' and bpel.config.OneWayDelivery property to 'sync'.

In this case everything works fine like Process A call Process B in case of Error. Process A get rolledback successfully and i am able to see the trace of Process B as it get executed successfully.

Questions :

In case1 though i have set the transaction=requiresnew, why Process B is not getting executed and i am not able to see the trace of it.Ideally Process B should get executed in a seperate transaction. While in Case2, everything works fine. So what exactly happening after placing 'OnewayDelivery' Property, that it started working.


I have went through the documents on 'OnewayDelivery', but i didn't get the clear idea corresponding to my scenarios explained above.

Can anyone please explain on how exactly 'OnewayDelivery' property works.

Thanks.
This post has been answered by Arik on Apr 30 2012
Jump to Answer

Comments

DK2010

Hi,

It means  some session accessing that table. you can Query from v$access

Find that sid and kill that sid  and drop the table

HTH

unknown-698157
Answer

For sure there are locks, as the table is in use.

Drop table wants an exclusive lock on the corresponding dictionary record(s).

Whenever the table is in use there will be a row-share lock on that record in the dictionary.

Did you consult gv$access ?

Please do so now.

-------------

Sybrand Bakker

Senior Oracle DBA

Marked as Answer by User_KWXZ9 · Sep 27 2020
User_KWXZ9

Sybrand ,

Thanks alot for your help . gv$access resolved the issue .

Regards

DBApps

1 - 4
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on May 30 2012
Added on Apr 26 2012
6 comments
341 views