Author |
Message
|
jfrankman |
Posted: Thu Nov 18, 2010 6:10 pm Post subject: JavaCompute error: Signal restricted by VM |
|
|
Apprentice
Joined: 18 Jun 2009 Posts: 36
|
I have a JavaCompute node that depends on some telnet libraries for screen scraping. I can run the desired java code successfully from the Message Broker Toolkit in my unit tests. I have placed the Message Broker jdk (C:\Program Files\IBM\WMBT610\jdk) on my build path in the Message Broker Toolkit, so I am pretty sure I am testing the code with the same jdk version used by the message broker.
However, when I run the code within the JavaCompute node and Exception is thrown with he following error:
Quote: |
java.lang.IllegalArgumentException: Signal restricted by VM: INT |
I have two questions:
1. On a windows installation, does the WMB use the same jdk as the default JDK in the Message Broker Toolkit?
2. Does this error indicate some sort of class loading issue or something else?
Here is the entire exception:
Quote: |
( ['MQROOT' : 0x9c404c0]
(0x01000000:Name):RecoverableException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\DataFlowEngine\PluginInterface\ImbJniNode.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 1028 (INTEGER)
(0x03000000:NameValue):Function = 'ImbJniNode::evaluate' (CHARACTER)
(0x03000000:NameValue):Type = 'ComIbmJavaComputeNode' (CHARACTER)
(0x03000000:NameValue):Name = 'com/idfbins/olie/realtime/test#FCMComposite_1_6' (CHARACTER)
(0x03000000:NameValue):Label = 'com.idfbins.olie.realtime.test.UpdateFedRecord' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 2230 (INTEGER)
(0x03000000:NameValue):Text = 'Caught exception and rethrowing' (CHARACTER)
(0x01000000:Name ):RecoverableException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\DataFlowEngine\PluginInterface\com_ibm_broker_plugin_CMbService.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 1861 (INTEGER)
(0x03000000:NameValue):Function = 'ImbJavaExceptionUtils::throwableToNativeException' (CHARACTER)
(0x03000000:NameValue):Type = '' (CHARACTER)
(0x03000000:NameValue):Name = '' (CHARACTER)
(0x03000000:NameValue):Label = '' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 4367 (INTEGER)
(0x03000000:NameValue):Text = 'Unhandled exception in plugin method.' (CHARACTER)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'evaluate' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'UpdateFedRecord' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'java.lang.IllegalArgumentException: Signal restricted by VM: INT' (CHARACTER)
)
(0x01000000:Name ):RecoverableException = (
(0x03000000:NameValue):File = 'F:\build\S610_P\src\DataFlowEngine\PluginInterface\com_ibm_broker_plugin_CMbService.cpp' (CHARACTER)
(0x03000000:NameValue):Line = 1879 (INTEGER)
(0x03000000:NameValue):Function = 'ImbJavaExceptionUtils::throwableToNativeException' (CHARACTER)
(0x03000000:NameValue):Type = '' (CHARACTER)
(0x03000000:NameValue):Name = '' (CHARACTER)
(0x03000000:NameValue):Label = '' (CHARACTER)
(0x03000000:NameValue):Catalog = 'BIPv610' (CHARACTER)
(0x03000000:NameValue):Severity = 3 (INTEGER)
(0x03000000:NameValue):Number = 4395 (INTEGER)
(0x03000000:NameValue):Text = 'Unhandled exception in plugin method' (CHARACTER)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'java.lang.IllegalArgumentException' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'com.ibm.misc.SignalDispatcher' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'registerSignal' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 5 (INTEGER)
(0x03000000:NameValue):Text = 'SignalDispatcher.java' (CHARACTER)
)
(0x01000000:Name ):Insert = (
(0x03000000:NameValue):Type = 2 (INTEGER)
(0x03000000:NameValue):Text = '151' (CHARACTER)
)
)
)
)
) |
|
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Nov 18, 2010 8:37 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Would this by any chance have something to do with java boxing? (int to Integer)? Or not catching an exception on Integer.parse()?
Seems like there might be a method signature discrepancy between the expected signature by the Broker and the actual one?
At the same time, if working in V7, have you thought about the Java class loader service?  _________________ MQ & Broker admin |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Nov 19, 2010 3:13 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
You shouldn't have had to do anything specific in the Toolkit to put any particular JVM on the buildpath. That should have been handled correctly when you created a JavaCompute node project.
But if you want to be sure about these things, you should have a local install of Runtime at the same version and be using the Runtime install jdk anyway.
Signal Restriced by VM doesn't sound like a build or jdk incompatibility either. I'm gonna lean more toward's FJ's notion of int vs Integer or etc. |
|
Back to top |
|
 |
jfrankman |
Posted: Fri Nov 19, 2010 10:05 am Post subject: |
|
|
Apprentice
Joined: 18 Jun 2009 Posts: 36
|
Thanks for your responses. I do not have access to the source code for the library I am using so it is hard for me to look at the method signatures. What is confusing is that this code runs fine under the same JVM version in Eclipse, but fails in the websphere message broker. I logged the system properties in both to compare the two and the only significant difference I can see is that JIT is disabled in the WMB but is enabled in Eclipse. Could this be a potential problem?
Here are the system setting for the unit test running the code inside Eclipse:
Quote: |
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - ========================System Properties=====================
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.assistive=ON
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - ibm.signalhandling.rs=false
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - sun.boot.library.path=C:\Program Files\IBM\MQSI\6.1\jre15\bin
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vm.version=2.3
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.configuration=scar
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vm.vendor=IBM Corporation
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vendor.url=http://www.ibm.com/
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - path.separator=;
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vm.name=IBM J9 VM
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - user.country=US
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - user.dir=C:\dev\mbrokerworkspace\OLIEServices
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vm.specification.name=Java Virtual Machine Specification
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.runtime.version=pwi32dev-20091106a (SR11 )
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.fullversion=J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32 j9vmwi3223-20091104 (JIT enabled)
J9VM - 20091103_45935_lHdSMr
JIT - 20091016_1845_r8
GC - 20091026_AA
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - os.arch=x86
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - com.ibm.vm.bitmode=32
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.io.tmpdir=C:\DOCUME~1\JFRANK~1\LOCALS~1\Temp\
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - line.separator=
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - com.ibm.util.extralibs.properties=
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vm.specification.vendor=Sun Microsystems Inc.
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - user.variant=
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.awt.fonts=
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - os.name=Windows XP
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - sun.java2d.fontpath=
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.jcl.version=20091106
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - sun.jnu.encoding=Cp1252
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.library.path=C:\Program Files\IBM\MQSI\6.1\jre15\bin;.;C:\Program Files\IBM\WebSphere MQ\Java\lib;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\Program Files\IBM\WebSphere MQ\bin;C:\Program Files\Windows Imaging\
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - jxe.current.romimage.version=9
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.vm.bootstrap.library.path=C:\Program Files\IBM\MQSI\6.1\jre15\bin
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - com.ibm.cpu.endian=little
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.specification.name=Java Platform API Specification
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.class.version=49.0
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - ibm.system.encoding=Cp1252
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.util.prefs.PreferencesFactory=java.util.prefs.WindowsPreferencesFactory
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - invokedviajava=
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - os.version=5.1 build 2600 Service Pack 3
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.vm.library.version=23
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - user.home=C:\Documents and Settings\jfrankman
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - user.timezone=
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.awt.printerjob=sun.awt.windows.WPrinterJob
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - file.encoding=Cp1252
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.specification.version=1.5
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - user.name=jfrankman
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.class.path=C:\dev\mbrokerworkspace\OLIEServices\bin;C:\dev\mbrokerworkspace\OLIEServices\lib\log4j-1.2.15.jar;C:\Program Files\IBM\SDP70Shared\plugins\org.junit4_4.1.0.1\junit-4.1.jar;C:\dev\mbrokerworkspace\OLIEServices\lib\jagacy3270.jar;/C:/Program Files/IBM/WMBT610/configuration/org.eclipse.osgi/bundles/1161/1/.cp/;/C:/Program Files/IBM/SDP70Shared/plugins/org.eclipse.jdt.junit_3.2.1.r321_v20060810/junitsupport.jar;/C:/Program Files/IBM/SDP70Shared/plugins/org.eclipse.jdt.junit.runtime_3.2.1.r321_v20060721/junitruntime.jar
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vm.specification.version=1.0
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - sun.arch.data.model=32
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.home=C:\Program Files\IBM\MQSI\6.1\jre15
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.jcl.build=20091026_1356
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - user.language=en
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - ibm.signalhandling.sigint=true
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.specification.vendor=Sun Microsystems Inc.
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - os.encoding=UTF8
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - awt.toolkit=sun.awt.windows.WToolkit
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vm.info=J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32 j9vmwi3223-20091104 (JIT enabled)
J9VM - 20091103_45935_lHdSMr
JIT - 20091016_1845_r8
GC - 20091026_AA
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.version=1.5.0
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.ext.dirs=C:\Program Files\IBM\MQSI\6.1\jre15\lib\ext
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - jxe.lowest.romimage.version=9
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - sun.boot.class.path=C:\Program Files\IBM\MQSI\6.1\jre15\lib\vm.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\core.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\charsets.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\graphics.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\security.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmpkcs.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmorb.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmcfw.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmorbapi.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjcefw.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjgssprovider.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjsseprovider2.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjaaslm.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjaasactivelm.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmcertpathprovider.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\server.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\xml.jar
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.vendor=IBM Corporation
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - file.separator=\
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - java.compiler=j9jit23
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - sun.io.unicode.encoding=UnicodeLittle
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - ibm.signalhandling.sigchain=true
DEBUG main com.idfbins.olie.service.OLIEServicesImpl - ========================End Of System Properties=====================
|
Here are the system settins for the JavaCompute node running inside the WMB:
Quote: |
INFO Thread-15 com.idfbins.olie.service.OLIEServicesImpl - Logging initialized.
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - ========================System Properties=====================
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vendor=IBM Corporation
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - os.name=Windows XP
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - sun.boot.class.path=C:\Program Files\IBM\MQSI\6.1\jre15\lib\vm.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\core.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\charsets.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\graphics.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\security.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmpkcs.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmorb.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmcfw.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmorbapi.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjcefw.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjgssprovider.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjsseprovider2.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjaaslm.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmjaasactivelm.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\ibmcertpathprovider.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\server.jar;C:\Program Files\IBM\MQSI\6.1\jre15\lib\xml.jar
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - sun.java2d.fontpath=
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vm.specification.vendor=Sun Microsystems Inc.
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.runtime.version=pwi32dev-20091106a (SR11 )
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.eglabel=NexusDev
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - mqsi.fixpack.capability=2
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - user.name=jfrankman
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.compiler=NONE
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.jarpath=C:\Program Files\IBM\MQSI\6.1\classes;C:\Program Files\IBM\MQSI\6.1\messages;
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - os.encoding=UTF8
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.pubsubExternalResourcesPSMode=enabled
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.lilpath=C:\Program Files\IBM\MQSI\6.1\bin;C:\Program Files\IBM\MQSI\6.1\jplugin;
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.util.extralibs.properties=
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - javax.net.ssl.trustStoreType=JKS
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.qmgr=WBRK61_DEFAULT_QUEUE_MANAGER
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - user.language=en
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.vm.bootstrap.library.path=C:\Program Files\IBM\MQSI\6.1\jre15\bin
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - sun.boot.library.path=C:\Program Files\IBM\MQSI\6.1\jre15\bin
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.filepath=C:\Program Files\IBM\MQSI\6.1
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.version=1.5.0
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - user.timezone=America/Denver
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - sun.arch.data.model=32
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.vm.library.version=23
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - sun.jnu.encoding=Cp1252
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - jxe.current.romimage.version=9
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - file.separator=\
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.specification.name=Java Platform API Specification
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.class.version=49.0
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - user.country=US
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.home=C:\Program Files\IBM\MQSI\6.1\jre15
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vm.info=J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32 j9vmwi3223-20091104 (JIT disabled)
J9VM - 20091103_45935_lHdSMr
JIT - 20091016_1845_r8
GC - 20091026_AA
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - os.version=5.1 build 2600 Service Pack 3
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.awt.fonts=
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - path.separator=;
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vm.version=2.3
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.util.prefs.PreferencesFactory=java.util.prefs.WindowsPreferencesFactory
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - user.variant=
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.protocol.handler.pkgs=com.ibm.broker.classloading
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.ejs.ras.lite.traceFileName=java.util.logging
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.awt.printerjob=sun.awt.windows.WPrinterJob
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - sun.io.unicode.encoding=UnicodeLittle
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - awt.toolkit=sun.awt.windows.WToolkit
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - ibm.signalhandling.sigint=true
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.assistive=ON
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - user.home=C:\Documents and Settings\jfrankman
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.cpu.endian=little
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.specification.vendor=Sun Microsystems Inc.
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - ibm.signalhandling.sigchain=true
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.envclasspath=C:\Program Files\IBM\MQSI\6.1\messages;C:\Program Files\IBM\MQSI\6.1\classes;C:\Program Files\IBM\MQSI\6.1\classes\ConfigManagerProxy.jar;C:\Program Files\IBM\MQSI\6.1\classes\configutil.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\providerutil.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\com.ibm.mqjms.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\ldap.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\jta.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\jndi.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\jms.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\connector.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\fscontext.jar;C:\Program Files\IBM\WebSphere MQ\Java\lib\com.ibm.mq.jar;.;C:\PROGRA~1\IBM\SQLLIB\java\db2java.zip;C:\PROGRA~1\IBM\SQLLIB\java\db2jcc.jar;C:\PROGRA~1\IBM\SQLLIB\java\db2jcc_license_cu.jar;C:\PROGRA~1\IBM\SQLLIB\bin;C:\Documents and Settings\All Users\Application Data\IBM\MQSI\common\wsrr;C:\Program Files\IBM\MQSI\6.1\classes\com.ibm.mq.jar
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.externalResourcesJarsURLS=C:\Program Files\IBM\WebSphere MQ\Java\lib;C:\Program Files\IBM\SQLLIB\java;<JDBC DRIVER INSTALL DIRECTORY>\lib;<JDBC DRIVER INSTALL DIRECTORY>\lib;C:\Program Files\Microsoft SQL Server 2005 Driver for JDBC\lib;<ORACLE HOME>\jdbc\lib;<SYBASE INSTALL ROOT>\jConnect-6_05\classes;<JDBC DRIVER INSTALL DIRECTORY>\lib
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.library.path=C:\Program Files\IBM\MQSI\6.1\jre15\bin;.;C:\Program Files\IBM\MQSI\6.1\jre15\bin;"C:\Program Files\IBM\WMBT610";C:\Program Files\IBM\MQSI\6.1\bin;/bin;C:\Program Files\IBM\WebSphere MQ\Java\lib;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\PROGRA~1\IBM\SQLLIB\BIN;C:\PROGRA~1\IBM\SQLLIB\FUNCTION;C:\Program Files\IBM\WebSphere MQ\bin;C:\Program Files\Windows Imaging\;;
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vendor.url=http://www.ibm.com/
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.name=WBRK61_DEFAULT_BROKER
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - javax.net.ssl.keyStoreType=JKS
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vm.vendor=IBM Corporation
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.fullversion=J2RE 1.5.0 IBM J9 2.3 Windows XP x86-32 j9vmwi3223-20091104 (JIT disabled)
J9VM - 20091103_45935_lHdSMr
JIT - 20091016_1845_r8
GC - 20091026_AA
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.class.path=C:\Program Files\IBM\MQSI\6.1\classes/biptrace.jar;C:\Program Files\IBM\MQSI\6.1\classes/bootstrap.jar;
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vm.specification.name=Java Virtual Machine Specification
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vm.specification.version=1.0
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.eguuid=20a8f24f-2801-0000-0080-d12da7f40186
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.io.tmpdir=C:\DOCUME~1\JFRANK~1\LOCALS~1\Temp\
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.jcl.version=20091106
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - ibm.system.encoding=Cp1252
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - exmlt.configpath=C:\Program Files\IBM\MQSI\6.1\exmltConfig
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - os.arch=x86
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - ibm.signalhandling.rs=true
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.ext.dirs=C:\Program Files\IBM\MQSI\6.1\jre15\lib\ext
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - user.dir=C:\Program Files\IBM\MQSI\6.1\bin
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - line.separator=
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.security.manager=com.ibm.broker.plugin.security.PluginSecurityManager
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.vm.name=IBM J9 VM
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.security.auth.login.config=C:\Program Files\IBM\MQSI\6.1/classes/wsjaas.conf
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.vm.bitmode=32
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - jxe.lowest.romimage.version=9
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - file.encoding=Cp1252
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.workpath=C:\Documents and Settings\All Users\Application Data\IBM\MQSI
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.jcl.build=20091026_1356
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - java.specification.version=1.5
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - com.ibm.oti.configuration=scar
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - broker.adapterExternalResourcesJarsURLS=
DEBUG Thread-15 com.idfbins.olie.service.OLIEServicesImpl - ========================End Of System Properties===================== |
|
|
Back to top |
|
 |
fjb_saper |
Posted: Fri Nov 19, 2010 8:17 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
How about you set this property before you run your test from within eclipse.
Code: |
-Djava.compiler=NONE |
? How does it work then?  _________________ MQ & Broker admin |
|
Back to top |
|
 |
optimist |
Posted: Sat Nov 20, 2010 7:05 pm Post subject: Try setting ibm.signalhandling.rs=false |
|
|
Apprentice
Joined: 18 Nov 2010 Posts: 33
|
Hi jfrankman -
Did you notice that "ibm.signalhandling.rs=false" in the Eclipse case, whereas it is set to true under WMB?
Follow the link in my next reply to see if you can set "ibm.signalhandling.rs=false". [first post in this forum and board not letting me add a URL]. |
|
Back to top |
|
 |
optimist |
Posted: Sat Nov 20, 2010 7:10 pm Post subject: Link |
|
|
Apprentice
Joined: 18 Nov 2010 Posts: 33
|
|
Back to top |
|
 |
fjb_saper |
Posted: Sun Nov 21, 2010 12:27 am Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
Wow... And you mean to say that you had to use the signal handler and could not use an onDispose or finalize method?  _________________ MQ & Broker admin |
|
Back to top |
|
 |
optimist |
Posted: Sun Nov 21, 2010 6:48 am Post subject: Hi Genius! |
|
|
Apprentice
Joined: 18 Nov 2010 Posts: 33
|
You can suppress signal handling within a JVM by using:
the -Xrs option
the property ibm.signalhandling.sigint set to true / false
the property ibm.signalhandling.rs set to true / false
-----------
For a primer on signals, read:
http://www.ibm.com/developerworks/ibm/library/i-signalhandling/
"When a signal is raised that is of interest to the JVM, a signal handler is called. This handler determines whether it has been called for a Java or non-Java thread. If the signal is for a Java thread, the JVM takes control of the signal handling. If the signal is for a non-Java thread, and the application that installed the JVM had previously installed its own handle for the signal, then control is given to that handler. Otherwise the signal is ignored (even if this is not the signal's default action)."
---------
The native code that is being called from Java could raise a signal (such as a possible signal for closing the telnet session etc) that the JVM need not handle. It is possible that in the case of Eclipse, a signal was being raised and the JVM ignored it because the ibm.signalhandling.rs was set to false.
HTH |
|
Back to top |
|
 |
jfrankman |
Posted: Mon Nov 22, 2010 9:40 am Post subject: |
|
|
Apprentice
Joined: 18 Jun 2009 Posts: 36
|
optimist,
Thank you for your insight. The signal handling settings are definately the source of the problem. Once I set the ibm.signalhandling.rs to true in my Eclipse unit tests I got the exact same behavior. So I tested various combinations of these setting. Here are the results:
Quote: |
-Xrs - this did not seem to make any difference
-Dibm.signalhandling.rs=false -Dibm.signalhandling.sigint=false //fails
-Dibm.signalhandling.rs=true -Dibm.signalhandling.sigint=false //fails
-Dibm.signalhandling.rs=true -Dibm.signalhandling.sigint=true //fails
-Dibm.signalhandling.rs=false -Dibm.signalhandling.sigint=true //succeeds
-Dibm.signalhandling.rs=false //succeeds
-Dibm.signalhandling.rs=true //fails
-Dibm.signalhandling.sigint=true //succeeds
-Dibm.signalhandling.sigint=false //fails
|
My next question is if/how I can safely change these setting inside the WMB?
Within the JavaCompute node I tried:
Code: |
System.setProperty("ibm.signalhandling.rs","false"); |
However, it had no effect. I think this setting needs to get passed into the JVM as a startup parameter. Is there a properties file or something where override this parameter?
fjb_saper:
Thanks for your response as well. Unfortunately, the error is happening inside a third party library, and I don't have access to the source code. So, I don't know why/how they are using signal handling inside of their code. |
|
Back to top |
|
 |
optimist |
Posted: Mon Nov 22, 2010 11:11 am Post subject: |
|
|
Apprentice
Joined: 18 Nov 2010 Posts: 33
|
|
Back to top |
|
 |
mqjeff |
Posted: Mon Nov 22, 2010 11:35 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
I would also complain to the library vendor if they didn't include specific instructions that their code needed to run in a JVM with this option set. |
|
Back to top |
|
 |
jfrankman |
Posted: Mon Nov 22, 2010 12:53 pm Post subject: |
|
|
Apprentice
Joined: 18 Jun 2009 Posts: 36
|
I had to upgrade to 6.1.0.8 to be able to change the jvm settings, but once I did I was able to run the following:
Quote: |
mqsichangeproperties wbrk61_default_broker -e NexusDev -o ComIbmJVMManager -n jvmSystemProperty -v"-Dibm.signalhandling.rs=false -Dibm.signalhandling.sigint=true" |
Once I did this and restarted the Broker I no longer get the error. Thanks everybody, especially optimist for pointing out the problem and helping me find a suitable fix.
I plan on notifying Jagacy http://www.jagacy.com of this problem with their library documentation. I re-checked their documentation (which is sparse), and could not find any mention of needing to disable the signaling. |
|
Back to top |
|
 |
|