Author |
Message
|
wyatt |
Posted: Fri Jul 27, 2007 8:34 am Post subject: Debugger (RAC) changes Message Broker Behaviour |
|
|
Voyager
Joined: 28 Nov 2004 Posts: 76
|
Has anyone observed that executing the debugger (Rational Agent Controller) impacts the runtime behavior of the program?
I wouldn't have believed it myself but we had two separate occasions where code works when observed via the debugger but does not work when executed with debugging turned off.
Also seen cases where Trace node reports information that is in conflict with actual results; e.g. The MQMD in a trace file does not match the MQMD of the message on the queue. |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jul 27, 2007 8:45 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
You probably have phantom execution groups.
Or the code in the workspace is not quite the same as the code that is deployed. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
wyatt |
Posted: Fri Jul 27, 2007 9:52 am Post subject: |
|
|
Voyager
Joined: 28 Nov 2004 Posts: 76
|
I can consistently produce trace files that have MQMD with values that do not match Message on the queue. The Trace node is wired up after the output queue.
The IPPROCS indicator is set to (1), so I dont think there are any phantom execution groups. |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jul 27, 2007 9:55 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
In v6, the MQMD as written to the queue is produced from a combination of the Properties tree and the MQMD tree.
I do not believe that the MQOutput node updates the OutputRoot.MQMD to indicate the values as written.
I could be entirely wrong.
IPPROCS is a reasonable indicator that you don't have Phantom EGs. comparing the number of DataFlowEngine processes against the number of EGs may be more reliable. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
sunny_30 |
Posted: Fri Jul 27, 2007 2:36 pm Post subject: |
|
|
 Master
Joined: 03 Oct 2005 Posts: 258
|
Wyatt,
What are those MQMD fields in the message that are not matching the MQMD values in the Trace-Node after the MQOutput?
-Sunny |
|
Back to top |
|
 |
fjb_saper |
Posted: Sat Jul 28, 2007 3:35 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
sunny_30 wrote: |
Wyatt,
What are those MQMD fields in the message that are not matching the MQMD values in the Trace-Node after the MQOutput?
-Sunny |
Typically what you'll find in the local environment like msgId, correlationId and such... or stuff that is in the properties like CCSID etc...
Enjoy  _________________ MQ & Broker admin |
|
Back to top |
|
 |
wyatt |
Posted: Sat Jul 28, 2007 12:10 pm Post subject: |
|
|
Voyager
Joined: 28 Nov 2004 Posts: 76
|
When using Reply Queue (option) on the Output node GroupId, MsgFlag and Sequence number set programatically(ESQL) appear in the trace node but the fields on the message are "changed" by the message broker.
...setting Group Fields works as expected when the output node option is set to "Queue". |
|
Back to top |
|
 |
gugs |
Posted: Mon Jul 30, 2007 12:52 am Post subject: We had this proble too |
|
|
Apprentice
Joined: 10 Jul 2007 Posts: 30
|
wyatt wrote: |
When using Reply Queue (option) on the Output node GroupId, MsgFlag and Sequence number set programatically(ESQL) appear in the trace node but the fields on the message are "changed" by the message broker.
...setting Group Fields works as expected when the output node option is set to "Queue". |
Have seen this before a few times i.e. the code worked in debug mode but not otherwise. I have seen this before too. In all cases the problem is with the input message, check the repeating groups. Have you imported the message structures from a previous version? Check the Max Occurs field, it should be set to -1 instead of another number e.g. 99 _________________ Thanks in advance |
|
Back to top |
|
 |
|