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 » General IBM MQ Support » XAER_RMERR(-3) return code from xa_start

Post new topic  Reply to topic
 XAER_RMERR(-3) return code from xa_start « View previous topic :: View next topic » 
Author Message
bgoldstein
PostPosted: Fri Sep 22, 2006 6:00 am    Post subject: XAER_RMERR(-3) return code from xa_start Reply with quote

Novice

Joined: 14 Feb 2002
Posts: 19
Location: Ameren Services, St.Louis,Mo., USA

Has anyone run into the following problem and can anyone recommend a way to fix it?

I just started upgrading to Mqseries version 6 (6.0.1.1). I have an application that uses a Java application program (Java 1.5.0.02) coded with the Mqseries base classes to select rows from an Oracle 9i (9.2.0.7) database and put messages on Mqseries. I receive the XAER_RMERR(-3) return code from xa_start when executing the MQBEGIN in the Java program. I am running on an Itanium server with HP-UX (11.23). I have recompiled my jdbcora load switch file in both 32-bit and 64-bit execution mode. I have done MQ traces and Java traces. I can see from the MQ trace that the xa_open call completes with a normal return code. This problem actually crashes the JVM giving me a core dump. I have not been able to get any kind of "ORA-?????" message from Oracle, or any other indication of what the problem is from the Oracle side. I have my debugging flag set to "0x7" and receive very little feedback (none useful) in my xatm log file. I do know that when the database was installed the initjvm.sql and initxa.sql members were not run. I had the DBA run these, but that had no effect on the problem. I also had them grant select authority to the "DBA_PENDING_TRANSACTIONS" table. I have opened an issue with IBM and they are working with me to resolve the problem. I thought that I would just throw this email out to the community while IBM is evaluating all of the doc that I sent them.

I don't see a lot of meaningful information, except that Oracle is returning with a XAER_RMERR(-3) return code.

Any ideas?

Thank you,
Barry
_________________
+
| Barry Goldstein
| Ameren Services
| Saint Louis, Missouri
| bgoldstein@ameren.com
| (314) 554-4351
+
Back to top
View user's profile Send private message Send e-mail
jefflowrey
PostPosted: Fri Sep 22, 2006 6:05 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Does the queue manager successfully start after you configured it to be the XA resource coordinator?
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
bgoldstein
PostPosted: Fri Sep 22, 2006 6:16 am    Post subject: Queue manager starts Reply with quote

Novice

Joined: 14 Feb 2002
Posts: 19
Location: Ameren Services, St.Louis,Mo., USA

Yes, the queue manager starts normally and I receive no error messages. This leads me to believe that the queue manager is connecting to the database at startup time and working as it should. I have in the past received errors at startup time and then the program receives a 2121 when it does a MQBEGIN. This looks like a different situation.

Thank you,
Barry
_________________
+
| Barry Goldstein
| Ameren Services
| Saint Louis, Missouri
| bgoldstein@ameren.com
| (314) 554-4351
+
Back to top
View user's profile Send private message Send e-mail
jefflowrey
PostPosted: Fri Sep 22, 2006 6:32 am    Post subject: Reply with quote

Grand Poobah

Joined: 16 Oct 2002
Posts: 19981

Is it a 32-bit Oracle instance? A 64-bit Oracle instance?

Can you use the C sample programs that use xa successfully? (amsxa*)
_________________
I am *not* the model of the modern major general.
Back to top
View user's profile Send private message
bgoldstein
PostPosted: Fri Sep 22, 2006 7:04 am    Post subject: Reply with quote

Novice

Joined: 14 Feb 2002
Posts: 19
Location: Ameren Services, St.Louis,Mo., USA

It is a 64-bit oracle instance. I have not tried the xa sample programs. It will take a little effort to set this up for c-programs, but I will try to do it either this afternoon or on Monday. I would like to know if it works outside of Java and if I can get more information using a c-program.
_________________
+
| Barry Goldstein
| Ameren Services
| Saint Louis, Missouri
| bgoldstein@ameren.com
| (314) 554-4351
+
Back to top
View user's profile Send private message Send e-mail
mvic
PostPosted: Fri Sep 22, 2006 7:24 am    Post subject: Re: XAER_RMERR(-3) return code from xa_start Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

bgoldstein wrote:
.
.
I receive the XAER_RMERR(-3) return code from xa_start when executing the MQBEGIN in the Java program. I am running on an Itanium server with HP-UX (11.23). I have recompiled my jdbcora load switch file in both 32-bit and 64-bit execution mode. I have done MQ traces and Java traces.
.
.

Excellent quality problem description.

I think I will end up recommending you to call IBM support with this. If you provide a problem description like the above, it should quickly get through to the right team.

Additionally, it might be useful to see some of the MQ trace you have collected. And I wonder if you collected the following trace. Try
Code:
$ export XAJTA_TRACEFILE=xajta
$ # recreate failure

... and please post here some relevant contents from the resulting xajtaPID.trc file in the current working directory. (PID is the pid of the JVM).
Back to top
View user's profile Send private message
bgoldstein
PostPosted: Fri Sep 22, 2006 7:48 am    Post subject: Reply with quote

Novice

Joined: 14 Feb 2002
Posts: 19
Location: Ameren Services, St.Louis,Mo., USA

Here is the output from the XAJTA trace:

MQStart called
Process id: 6772
Database switch flags : 0
Database name: Oracle_XA
XA to JTA return code conversion is on (default)
Yippe a JVM - JavaVM* 7eec2620

XA_Open called
Process id: 6772
Open string: Oracle_XA+Acc=P/**********/************+SesTm=30+DbgFl=0xf+LogDir=/home/mqm/xatm/log+DB=pwb+Threads=true
RMId: 1
flags: 00000000
Issuing call via Java Java XAOpen returned 0

XA_Start called
Process id: 6772
RMId: 1
flags: 00000000
Xid Format : 5067085
Xid gtrid length : 16 data:4512b56a200016065351484231443035
Xid bqual length : 4 data:00000001
Issuing call via Java Java XAStart returned -3

This matches the information that I already have, but I don't think it gives much more. I do have a problem open with IBM. Hopefully, they will come up with something more for me. I imagine that they are probably trying to reproduce my problem, but they have not gotten back to me since I provided my last set of documentation.
_________________
+
| Barry Goldstein
| Ameren Services
| Saint Louis, Missouri
| bgoldstein@ameren.com
| (314) 554-4351
+
Back to top
View user's profile Send private message Send e-mail
mvic
PostPosted: Fri Sep 22, 2006 8:06 am    Post subject: Reply with quote

Jedi

Joined: 09 Mar 2004
Posts: 2080

bgoldstein wrote:
+Threads=true

The last time I looked at this stuff (years ago, now, I'm afraid) when using a library named jdbcora to match JTA to XA - which is what you're doing here - you had to
(a) omit +Threads=true from the xa_open string, and
(b) use ThreadOfControl=PROCESS
in the XAResourceManager stanza in the qm.ini file. What happens if you do both of these things?

There are some related details (including the mention of ThreadOfControl=PROCESS) at http://publib.boulder.ibm.com/infocenter/wmqv6/v6r0/topic/com.ibm.mq.csqzaw.doc/jtajdbc.htm
Back to top
View user's profile Send private message
bgoldstein
PostPosted: Fri Oct 06, 2006 12:51 pm    Post subject: Problem solved Reply with quote

Novice

Joined: 14 Feb 2002
Posts: 19
Location: Ameren Services, St.Louis,Mo., USA

We have an answer to this problem that came from Oracle. We opened a TAR (PMR) with them and they came up with the solution. We were using classes12.zip (java 1.2 jdbc drivers) with Java 1.5 and they do not support that configuration. Instead, we needed to use ojdbc14.jar (java 1.4 jdbc drivers). Be careful because the ones for Oracle 9iR2 are very old and don't appear to be patched. Oracle recommended that we use the ojdbc14.jar file from 10.2.0.2 and this worked.

As I thought, once the xaer_rmerr went away the JVM stopped crashing. I still think IBM has some kind of error handling problem, but it isn't bothering me now since I eliminated the situation causing it.
_________________
+
| Barry Goldstein
| Ameren Services
| Saint Louis, Missouri
| bgoldstein@ameren.com
| (314) 554-4351
+
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » General IBM MQ Support » XAER_RMERR(-3) return code from xa_start
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.