APAR status
Closed as program error.
Error description
A number of Java InputStream objects for files are acquired by the MQ JCA resource adapter (MQ-RA) when it is first initialised that are not subsequently explicitly closed. As a result, when the MQ-RA is running within the GlassFish application server and the server is shutdown, the following warning messages are logged to the server.log file: ************************************************** Input stream has been finalized or forced closed without being explicitly closed; stream instantiation reported in following stack trace java.lang.Throwable at com.sun.enterprise.loader.ASURLClassLoader$SentinelInputStream.< init>(ASURLClassLoader.java:1278) at com.sun.enterprise.loader.ASURLClassLoader$InternalJarURLConnect ion.getInputStream(ASURLClassLoader.java:1386) at java.net.URL.openStream(Unknown Source) at com.ibm.msg.client.jms.internal.JMSComponent$1.run(JMSComponent. java:87) at com.ibm.msg.client.jms.internal.JMSComponent$1.run(JMSComponent. java:71) at java.security.AccessController.doPrivileged(Native Method) at com.ibm.msg.client.jms.internal.JMSComponent.<init>(JMSComponent .java:71) ************************************************** Input stream has been finalized or forced closed without being explicitly closed; stream instantiation reported in following stack trace java.lang.Throwable at com.sun.enterprise.loader.ASURLClassLoader$SentinelInputStream.< init>(ASURLClassLoader.java:1278) at com.sun.enterprise.loader.ASURLClassLoader$InternalJarURLConnect ion.getInputStream(ASURLClassLoader.java:1386) at java.net.URL.openStream(Unknown Source) at com.ibm.mq.jms.MQJMSComponent$1.run(MQJMSComponent.java:90) at java.security.AccessController.doPrivileged(Native Method) at com.ibm.mq.jms.MQJMSComponent.<init>(MQJMSComponent.java:73) ************************************************** Input stream has been finalized or forced closed without being explicitly closed; stream instantiation reported in following stack trace java.lang.Throwable at com.sun.enterprise.loader.ASURLClassLoader$SentinelInputStream.< init>(ASURLClassLoader.java:1278) at com.sun.enterprise.loader.ASURLClassLoader$InternalJarURLConnect ion.getInputStream(ASURLClassLoader.java:1386) at java.net.URL.openStream(Unknown Source) at com.ibm.msg.client.commonservices.j2se.J2SEComponent$1.run(J2SEC omponent.java:76) at java.security.AccessController.doPrivileged(Native Method) at com.ibm.msg.client.commonservices.j2se.J2SEComponent.<init>(J2SE Component.java:63) at com.ibm.mq.connector.ResourceAdapterImpl.<clinit>(ResourceAdapte rImpl.java:180) ************************************************** Input stream has been finalized or forced closed without being explicitly closed; stream instantiation reported in following stack trace java.lang.Throwable at com.sun.enterprise.loader.ASURLClassLoader$SentinelInputStream.< init>(ASURLClassLoader.java:1278) at com.sun.enterprise.loader.ASURLClassLoader$InternalJarURLConnect ion.getInputStream(ASURLClassLoader.java:1386) at java.net.URL.openStream(Unknown Source) at com.ibm.mq.jmqi.internal.JmqiTools$6.run(JmqiTools.java:2229) at java.security.AccessController.doPrivileged(Native Method) at com.ibm.mq.jmqi.internal.JmqiTools.getVersionProperties(JmqiTool s.java:2203) at com.ibm.mq.jmqi.JmqiEnvironment.<clinit>(JmqiEnvironment.java:22 9) at com.ibm.mq.jmqi.JmqiFactory.getInstance(JmqiFactory.java:122) at com.ibm.mq.internal.MQCommonServices.<clinit>(MQCommonServices.j ava:146) at com.ibm.mq.MQSESSION.getJmqiEnv(MQSESSION.java:141) at com.ibm.mq.MQSimpleConnectionManager.<init>(MQSimpleConnectionMa nager.java:95) at com.ibm.mq.MQEnvironment.<clinit>(MQEnvironment.java:569) ************************************************** Input stream has been finalized or forced closed without being explicitly closed; stream instantiation reported in following stack trace java.lang.Throwable at com.sun.enterprise.loader.ASURLClassLoader$SentinelInputStream.< init>(ASURLClassLoader.java:1278) at com.sun.enterprise.loader.ASURLClassLoader$InternalJarURLConnect ion.getInputStream(ASURLClassLoader.java:1386) at java.net.URL.openStream(URL.java:1038) at com.ibm.msg.client.commonservices.CommonServices.loadProperties( CommonServices.java:656) at com.ibm.msg.client.commonservices.CommonServices.getProductizati on(CommonServices.java:605) at com.ibm.mq.jms.MQJMSComponent$1.run(MQJMSComponent.java:140) at java.security.AccessController.doPrivileged(Native Method) at com.ibm.mq.jms.MQJMSComponent.<init>(MQJMSComponent.java:73)
Local fix
Problem summary
**************************************************************** USERS AFFECTED: This issue affects users of the IBM MQ JCA resource adapter, who have deployed the IBM MQ resource adapter into GlassFish Application Server. Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: A number of components are initialized when the IBM MQ classes for JMS or classes for Java are first used by an application, or the IBM MQ JCA resource adapter is initialised by an application server. In order to discover the available components, a number of properties files located in the IBM MQ classes for Java and classes for JMS JAR files are opened, and data is read from them. For each properties file to be read, a Java InputStream object was opened. However, the InputStream was not explicitly closed after the properties file had been read. When the IBM MQ resource adapter was running inside of GlassFish application server, this resulted in warning messages being written to the application server's log file when the application server was shut down.
Problem conclusion
The relevant components of the IBM MQ classes for Java, classes for JMS and JCA resource adapter have been updated to explicitly call the close() method on InputStreams that are opened when reading properties files included within the IBM MQ classes for Java and classes for JMS JAR files. --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v9.0 LTS 9.0.0.6 v9.1 CD 9.1.2 v9.1 LTS 9.1.0.2 The latest available maintenance can be obtained from 'WebSphere MQ Recommended Fixes' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037 If the maintenance level is not yet available information on its planned availability can be found in 'WebSphere MQ Planned Maintenance Release Dates' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309 ---------------------------------------------------------------
Temporary fix
Comments
APAR Information
APAR number
IT26390
Reported component name
IBM MQ BASE M/P
Reported component ID
5724H7261
Reported release
900
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2018-09-22
Closed date
2018-10-26
Last modified date
2018-10-26
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
IBM MQ BASE M/P
Fixed component ID
5724H7261
Applicable component levels
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
26 October 2018