|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
WMQI 2.1 & Oracle 8.1.7 - Freezes periodically |
« View previous topic :: View next topic » |
Author |
Message
|
Deeko |
Posted: Wed Apr 16, 2003 3:44 am Post subject: WMQI 2.1 & Oracle 8.1.7 - Freezes periodically |
|
|
 Acolyte
Joined: 16 May 2001 Posts: 72 Location: Edinburgh, UK
|
Hi,
I have a flow that inserts data into a number of tables and it works fine most of the time. However, typically after error situations, the flow just seems to freeze up and the message gets trapped within it! To get the message out I have to get disable the input queue and kill -9 the execution group (and stop it in the operations view when it comes back). The message then comes back onto the input queue with a backout count of one! If I then start a trace and restart the message flow the trace continues until I get to the first insert statement and stops.
I am handling the DB Excpetions by myself and I guess this could be the problem (I'll try changing it back).
Anyone any ideas?
Cheers,
Derek. |
|
Back to top |
|
 |
Deeko |
Posted: Wed Apr 16, 2003 3:49 am Post subject: |
|
|
 Acolyte
Joined: 16 May 2001 Posts: 72 Location: Edinburgh, UK
|
I changed the exception handling back (by reverting the checkbox on the appropriate tab) and removing my throw calls and it's still freezing!
Regards,
Derek. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Apr 16, 2003 6:38 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You should first review your error handling, and make sure it will allow a message to completely fail out somewhere - a backout queue, the dead letter queue, etc. You could be looping instead of locking up.
I have seen this kind of deadlock happen with XML data that is not well-formed, particularly with whitespace before the first element. The reason you wouldn't see this occur until you do your insert is the lazy parsing. Whatever fields you are accessing for your insert aren't accessed before your insert, so they aren't parsed until then. |
|
Back to top |
|
 |
Deeko |
Posted: Thu Apr 17, 2003 12:02 am Post subject: |
|
|
 Acolyte
Joined: 16 May 2001 Posts: 72 Location: Edinburgh, UK
|
Jeff,
All I have is a MQOutput node connected to the Failure node of the MQInput and this works fine most of the time. There's no looping as the dataflowengine process for the execeution group isn't using any CPU.
In fact the flow works fine for periods of time and then locks up. The XML looks well formed to me....here's the insert statement that the freeze occurs immediately after from the trace:
2003-04-16 12:48:26.356981 2571 UserTrace BIP2544I: Node 'NQ_Oracle_MISLoader_1.Insert Request Message': Executing database SQL statement 'INSERT INTO MESSAGE_REQUEST(REQUESTID, FIRMID, DATETIME, HALF_HOURGROUPCODE, INCOMING_MESSAGE, COUNTS) VALUES(?, ?, ?, ?, 'Incoming Message', 1)' derived from (1, 1); expressions 'InputRoot.XML.mis_message.request_id, InputRoot.XML.mis_message.mis_data.firm_id, ts, hhcode'; resulting parameter values ''SV%ytRf1,Th0JVv1ydn$5)2 ', '2500010004848110464EH24JN', '2003-02-21 08:31:13.291', 18'.
As you can see it seems to derived the values from the XML OK. The values are all correct in datatype and length etc.
Regards,
Derek. |
|
Back to top |
|
 |
Deeko |
Posted: Thu Apr 17, 2003 12:29 am Post subject: |
|
|
 Acolyte
Joined: 16 May 2001 Posts: 72 Location: Edinburgh, UK
|
I've sussed this out....the insert was being locked out in the Oracle DB. I've cleared the locks and it's working fine! I should have thought of that sooner! Duh!  |
|
Back to top |
|
 |
|
|
 |
|
Page 1 of 1 |
|
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
|
|
|
|