ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Oracle autononomous commits in called stored proc

Post new topic  Reply to topic
 Oracle autononomous commits in called stored proc « View previous topic :: View next topic » 
Author Message
Rookwood
PostPosted: Wed Dec 13, 2006 10:27 am    Post subject: Oracle autononomous commits in called stored proc Reply with quote

Novice

Joined: 26 Aug 2004
Posts: 13

Hi all,

have several strange issues with our MB v5.0 (csd 7) and Oracle 9.2i installation on Solaris. No XA coordination involved.

Problem A.
1. Message flow calls Oracle stored proc.
2. Error occurs in stored proc which is caught in pl/sql code and internal pl/sql error handling process writes error info to an Oracle table and runs commit statement. (autonomous commit)
3. Pl/sql error handling then throws exception so broker is notified of a problem and broker throws error and performs rollback of input message.

Expected result of the above is that message is backed out and error data is found in the Oracle table.
Actual result, 99 times out of 100 the actual = expected. 1 time out 100 the data does not appear in the error table until the message flow has been killed.

Problem B
1. Message flow calls Oracle pl/sql procedure.
2. said procedure 'seeds' and table with data, calls commit statement (autononomous commit)
3. pl/sql proc then calls java procedure to utlise seeded table data for further processing.
4. java proc reports that it cannot find said seeded data in the table, i.e it appears that the commit did actually take place.

Heres the nub of the problem: If the Oracle developer calls his stored proc from TOAD using the same userid as the broker uses, passing the same parameters the broker passes, then the java proc is able to see the seeded data; i.e. the commit seems to have been achieved. Java process completes and returns control to the pl/sql proc which completes ok.

In both instances it almost seems that the broker is 'hijacking' the Oracle commit and preventing it from being processed by the database.

Has anyone seen anything similar or are we making naive assumptions about what we'd expect to see happening.
[/list]
_________________
GS
Back to top
View user's profile Send private message
jefflowrey
PostPosted: Wed Dec 13, 2006 11:22 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Is the Input message persistent that one time out of 100?
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
Rookwood
PostPosted: Thu Dec 14, 2006 4:55 am    Post subject: Reply with quote

Novice

Joined: 26 Aug 2004
Posts: 13

As far as I'm aware all our messages are persistent and we utilise a common subflow as input to all our flows which as the input node configured with Transaction Mode = 'Yes'.

Could well be a problem with the way the Oracle stuff is written which is out of our hands but just interested in any feedback so we can push back at oracle team.
_________________
GS
Back to top
View user's profile Send private message
JosephGramig
PostPosted: Thu Dec 14, 2006 5:20 am    Post subject: Reply with quote

Grand Master

Joined: 09 Feb 2006
Posts: 1244
Location: Gold Coast of Florida, USA

Interesting. Not that this is directly related, but...

Somebody was doing a PASSTHRU with the following select:

SELECT TO_CHAR(KEYFIELD.NEXTVAL, '99999999') FROM SOMETABLE

To get the next unique key and make it a right justified left space filled eight character field.

Well, it didn't work all the time and indeed it seemed to fail most of the time. I took out the TO_CHAR function and used the OVERLAY WMB function to achieve the same result.

Just another failure of Oracle.
_________________
Joseph
Administrator - IBM WebSphere MQ (WMQ) V6.0, IBM WebSphere Message Broker (WMB) V6.1 & V6.0
Solution Designer - WMQ V6.0
Solution Developer - WMB V6.1 & V6.0, WMQ V5.3
Back to top
View user's profile Send private message AIM Address
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » WebSphere Message Broker (ACE) Support » Oracle autononomous commits in called stored proc
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.