This content has been marked as final. Show 4 replies
we are using MQAdapters heavily (almost 40 different MQ Adapters for 40 different queues) but never faces such issues. Our version of tuxedo is 9 by the way. I dont believe the source of the problem will be from MQAdapter.
The error log seems to indicate that your Tuxedo application attempted to abort (rollback) a transaction that was already marked as rollback only. Without more details, it's really difficult to say what is happening. Can you describe in more detail what your application is doing and what errors you are seeing?
Oracle Tuxedo Chief Architect
We have 6 MQI adapters reading from 5 different queues, but in this case we are writing in only one queue.
Someone from Oracle told us that the XA_RBROLLBACK occurs because we have 6 MQ adapters that are reading from the same queues and when one adapter finds a message and try to get that message, it can occurs that other MQ Adapter gets it before. In this case, the MQ adapter rollbacks the transaction. Even when we got some XA_RBROLLBACK errors, we don´t lose message. Also, I read something about that when XA sends a xa_end call to MQ adapter, it actually does the rollback, so when the MQ adapter receives the xa_rollback call, it answers with XA_RBROLLBACK. Is that true?
However, I am more worried about the performance. We are putting a request message in a MQ queue and waiting for the reply. In some cases, it takes 150ms and in other cases it takes much more longer (more than 400ms). The average is 300ms. MQ adapter calls a service (txgralms0) which lasts 110ms in average.
This is our configuration:
"MQI_QMTESX01" SRVGRP="g03000" SRVID=3000
CLOPT="-- -C /tuxedo/qt/txqgral00/control/src/MQI_QMTESX01.cfg"
RQPERM=0600 REPLYQ=N RPPERM=0600 MIN=6 MAX=6 CONV=N
MAXGEN=1 GRACE=86400 RESTART=N
MINDISPATCHTHREADS=0 MAXDISPATCHTHREADS=1 THREADSTACKSIZE=0
Thanks in advance,
Thanks for the information. Could you please send me your MQI adapter configuration in order to see differences with mine?