|
RSS Feed - WebSphere MQ Support
|
RSS Feed - Message Broker Support
|
 |
|
JVM Crash on Solaris with MQ 6 |
« View previous topic :: View next topic » |
Author |
Message
|
swmk18 |
Posted: Mon May 11, 2009 7:58 pm Post subject: JVM Crash on Solaris with MQ 6 |
|
|
Newbie
Joined: 11 May 2009 Posts: 2
|
Hi Experts,
JVM got crashed, what I believe, at creating Queue Manager from Java. I could see some native library from error dump.
Here is a part of error dump.
#
# An unexpected error has been detected by HotSpot Virtual Machine:
#
# SIGSEGV (0xb) at pc=0xb2a6af3c, pid=11446, tid=21
#
# Java VM: Java HotSpot(TM) Server VM (1.5.0_16-b02 mixed mode)
# Problematic frame:
# C [libmqmcs.so+0x6af3c] xtrEstablishTraceStatus+0xcc
#
--------------- T H R E A D ---------------
Current thread (0x00300798): JavaThread "FTI Thread" [_thread_in_native, id=21]
siginfo:si_signo=11, si_errno=0, si_code=1, si_addr=0xfac803e0
Registers:
O0=0x00000000 O1=0xb2d7db4c O2=0x00001464 O3=0x00002800
O4=0x00001000 O5=0x0000117c O6=0xb2d7dae8 O7=0xb2bbe3e0
G1=0xfac80000 G2=0x00000000 G3=0x00002800 G4=0x000028d8
G5=0xb2b8c0ac G6=0x00000000 G7=0xfb969a00 Y=0x00000000
PC=0xb2a6af3c nPC=0xb2a6af40
Top of Stack: (sp=0xb2d7dae8)
0xb2d7dae8: fac80000 00000000 00000000 00000000
0xb2d7daf8: 00000000 00001000 00001074 b2b8c148
0xb2d7db08: 00000000 00659c48 b2b87554 b2bbed68
0xb2d7db18: 00002800 0000284c b2d7db50 b2a4fdc8
0xb2d7db28: 00312b38 00000004 6a617661 00000000
0xb2d7db38: 00000000 00000000 00000000 00000000
0xb2d7db48: 00000000 00659c48 00000000 b2b87554
0xb2d7db58: 00000000 b2bbed68 00000000 00000000
Instructions: (pc=0xb2a6af3c)
0xb2a6af2c: e0 06 e0 34 9a 03 21 7c de 06 80 0d e4 03 e0 00
0xb2a6af3c: e2 04 23 e0 80 a4 80 11 22 48 00 05 d6 06 e0 28
Stack: [0xb2d00000,0xb2d80000), sp=0xb2d7dae8, free space=502k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libmqmcs.so+0x6af3c] xtrEstablishTraceStatus+0xcc
C [libmqmcs.so+0x4fdd0] xcsInitialize+0x4e4
C [libmqz.so+0x70748] zstInitCS+0x144
C [libmqz.so+0x5ed90] zstMQConnect+0x8e0
C [libmqz.so+0x5d794] zstMQCONNX+0x190
C [libmqm.so+0x28ae4] MQCONNX+0x10c
C [libmqjbnd05.so+0x6af8] Java_com_ibm_mq_server_MQSESSION__1MQCONNX+0x1ac
j com.ibm.mq.server.MQSESSION._MQCONNX(Ljava/lang/String;Lcom/ibm/mq/MQConnectionOptions;Lcom/ibm/mq/Pint;Lcom/ibm/mq/Pint;Lcom/ibm/mq/Pint;)V+-133917
j com.ibm.mq.server.MQSESSION._MQCONNX(Ljava/lang/String;Lcom/ibm/mq/MQConnectionOptions;Lcom/ibm/mq/Pint;Lcom/ibm/mq/Pint;Lcom/ibm/mq/Pint;)V+0
j com.ibm.mq.server.MQSESSION.MQCONN(Ljava/lang/String;Lcom/ibm/mq/Pint;Lcom/ibm/mq/Pint;Lcom/ibm/mq/Pint;Lcom/ibm/mq/Pthrowable;)V+111
v ~C2IAdapter
J com.ibm.mq.MQManagedConnectionJ11.<init>(Ljava/lang/String;Ljava/util/Hashtable;Ljavax/resource/spi/ConnectionRequestInfo;Lcom/ibm/mq/MQManagedConnectionFactory;)V
v ~I2CAdapter
j com.ibm.mq.MQBindingsManagedConnectionFactoryJ11._createManagedConnection(Ljavax/resource/spi/ConnectionRequestInfo;Z)Lcom/ibm/mq/MQManagedConnectionJ11;+340
j com.ibm.mq.MQBindingsManagedConnectionFactoryJ11.createManagedConnection(Ljavax/resource/spi/ConnectionRequestInfo;)Lcom/ibm/mq/MQManagedConnectionJ11;+3
j com.ibm.mq.StoredManagedConnection.<init>(Lcom/ibm/mq/MQManagedConnectionFactory;Ljavax/resource/spi/ConnectionRequestInfo;Lcom/ibm/mq/ManagedConnectionStore;Lcom/ibm/mq/PoolScavenger;Lcom/ibm/mq/MQSimpleConnectionManager;)V+61
j com.ibm.mq.MQSimpleConnectionManager.allocateConnection(Lcom/ibm/mq/MQManagedConnectionFactory;Ljavax/resource/spi/ConnectionRequestInfo;)Ljava/lang/Object;+243
j com.ibm.mq.MQQueueManagerFactory.obtainBaseMQQueueManager(Ljava/lang/String;Ljava/util/Hashtable;Lcom/ibm/mq/MQConnectionManager;)Lcom/ibm/mq/MQQueueManager;+31
j com.ibm.mq.MQQueueManagerFactory.procure(Ljava/lang/String;Ljava/util/Hashtable;Lcom/ibm/mq/MQConnectionManager;Ljavax/resource/spi/ConnectionManager;)Lcom/ibm/mq/MQQueueManager;+78
j com.ibm.mq.MQQueueManagerFactory.constructQueueManager(Lcom/ibm/mq/QueueManagerFactoryProperties;)Lcom/ibm/mq/MQQueueManager;+71
j com.ibm.mq.MQQueueManagerFactory.createQueueManager(ILcom/ibm/mq/QueueManagerFactoryProperties;)Lcom/ibm/mq/MQQueueManager;+155
j com.ibm.mq.MQQueueManager.<init>(Ljava/lang/String;)V+134
I'm not sure whether I am at the right place to seek for advise. But I believe there would be some experts who knows the cause.
Thanks a lot for your help. |
|
Back to top |
|
 |
Vitor |
Posted: Mon May 11, 2009 11:36 pm Post subject: Re: JVM Crash on Solaris with MQ 6 |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
swmk18 wrote: |
JVM got crashed, what I believe, at creating Queue Manager from Java. |
Am I correct in saying that what you mean is your application was attempting to create a Queue Manager object (as I notice a failed connection in the dump) rather than using a Java application to actually create a Queue Manager on the server?
In either event, could you post a snippet of the code in question? Also the maintenance level of the WMQv6 in use.
You mention Solaris? Which version, and is this a zoned machine?
swmk18 wrote: |
I'm not sure whether I am at the right place to seek for advise. But I believe there would be some experts who knows the cause.
|
Your faith in us is touching.....  _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
Vitor |
Posted: Mon May 11, 2009 11:39 pm Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Moved to potentially more relevant section (what I choose to believe the poster meant when he wondered about being in "the right place")
 _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
swmk18 |
Posted: Tue May 12, 2009 12:58 am Post subject: |
|
|
Newbie
Joined: 11 May 2009 Posts: 2
|
Hi Vitor,
Thanks for your reply. Here is some snippets.
Code: |
public MQUtility (String in_managername) throws MQUtilityException {
super ();
MQException.log = null; // turn off default logging.
queues = new Vector ();
pattern = -1;
try {
qmgr = new MQQueueManager (in_managername);
}
catch (MQException mqe)
{
throw new MQUtilityException(mqe.getMessage(), mqe);
}
}
/**
* Open a queue on given MQ Manager, returns the MQQueue handle.
*/
public MQQueue openQueue (String in_queuename, char in_mode, int in_pattern) throws MQUtilityException {
if (pattern == -1) {
pattern = in_pattern;
}
try {
int openOptions = 0;
switch (in_mode) {
case 'w':
{
openOptions = MQC.MQOO_FAIL_IF_QUIESCING | MQC.MQOO_OUTPUT;
pmo = new MQPutMessageOptions ();
pmo.options = MQC.MQPMO_NEW_MSG_ID | MQC.MQPMO_FAIL_IF_QUIESCING;
if (pattern == MQPatterns.PSEUDO_SYNC_UPD) {
pmo.options |= MQC.MQPMO_SYNCPOINT;
}
break;
}
case 'r':
{
openOptions = MQC.MQOO_FAIL_IF_QUIESCING | MQC.MQOO_BROWSE | MQC.MQOO_INPUT_AS_Q_DEF;
gmo = new MQGetMessageOptions ();
gmo.options = MQC.MQGMO_FAIL_IF_QUIESCING | MQC.MQGMO_WAIT;
if (pattern == MQPatterns.PSEUDO_SYNC_UPD) {
gmo.options |= MQC.MQGMO_SYNCPOINT;
}
else if (pattern == MQPatterns.PSEUDO_SYNC_INQ ||
pattern == MQPatterns.PSEUDO_SYNC_UPD) {
gmo.waitInterval = 10000; // 10 sec timeout
gmo.matchOptions = MQC.MQMO_MATCH_CORREL_ID;
}
else if (pattern == MQPatterns.ASYNC_UPD_ACK) {
gmo.waitInterval = 10000; // 10 sec timeout
}
else if (pattern == MQPatterns.SERVER) {
gmo.waitInterval = MQC.MQWI_UNLIMITED;
}
break;
}
default:
{
throw new MQUtilityException("Invalid mode");
}
}
String dynamicQueueName = null;
if (pattern == MQPatterns.PSEUDO_SYNC_INQ ||
pattern == MQPatterns.ASYNC_INQ ||
pattern == MQPatterns.PSEUDO_SYNC_UPD) {
dynamicQueueName = "mqPattern*";
}
MQQueue mqQueue = qmgr.accessQueue (in_queuename, openOptions, null, dynamicQueueName, null);
queues.addElement (mqQueue);
return mqQueue;
}
catch (MQException mqe) {
throw new MQUtilityException(mqe.getMessage(), mqe);
}
} |
Be waiting for your advise. [/code] |
|
Back to top |
|
 |
Vitor |
Posted: Tue May 12, 2009 1:14 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
swmk18 wrote: |
Be waiting for your advise. |
Given my level of Java knowledge, I'm unconvinced it'd be worth waiting for.
On the understanding I barely know what I'm talking about with Java (and someone more expert will be along in a minute I'm sure) are you trying to establish a client or a server connection here? How have you configured for that, and what environment is the Java running in generally?
It would also help if you answered my other questions on levels and versions. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
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
|
|
|
|