IBM Support

PI20317;8.5.5: illegalmonitorstateexception leads to corrupt destination in WAS

Download


Abstract

When a Messaging engine is configured with a FileStore in certain scenarios an "IllegalMonitorStateException" is observed when persisting the data into the store.

Download Description

PI20317 resolves the following problem:

ERROR DESCRIPTION:
JMS application is unable to send messages to WebSphere Application Server v8.0 Service Integration Bus destination. The following errors are logged in the SystemOut.log:

CNTR0020E: EJB threw an unexpected (non-declared) exception
during invocation of method "publishEvent" on bean
"BeanId(XXX)". Exception data: com.ibm.ws.sib.processor.
exceptions.SIMPErrorException: com.ibm.websphere.sib.exception.
SIErrorException: CWSIS1002E: An unexpected exception was
caught
during transaction completion. Exception: java.lang.Illegal
MonitorStateException
at com.ibm.ws.sib.processor.impl.PubSubInputHandler.localPut
(PubSubInputHandler.java:1411)
at com.ibm.ws.sib.processor.impl.PubSubInputHandler.internal
HandleMessage(PubSubInputHandler.java:1128)
at com.ibm.ws.sib.processor.impl.PubSubInputHandler.handle
ProducerMessage(PubSubInputHandler.java:1061)
at com.ibm.ws.sib.processor.impl.ProducerSessionImpl.send
(ProducerSessionImpl.java:599)
at com.ibm.ws.sib.api.jms.impl.JmsMsgProducerImpl.send
Message(JmsMsgProducerImpl.java:1211)
at com.ibm.ws.sib.api.jms.impl.JmsMsgProducerImpl.send
(JmsMsgProducerImpl.java:725)
Caused by: com.ibm.websphere.sib.exception.SIErrorException:
CWSIS1002E: An unexpected exception was caught during
transaction
completion. Exception: java.lang.IllegalMonitorStateException
at com.ibm.ws.sib.msgstore.transactions.MSDelegatingLocal
Transaction.commit(MSDelegatingLocalTransaction.java:452)
at com.ibm.ws.sib.processor.impl.PubSubInputHandler.local
Put(PubSubInputHandler.java:1398)
... 79 more
Caused by: java.lang.IllegalMonitorStateException
at java.util.concurrent.locks.ReentrantLock$Sync.tryRelease
(ReentrantLock.java:138)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.
release(AbstractQueuedSynchronizer.java:1250)
at java.util.concurrent.locks.ReentrantLock.unlock
(ReentrantLock.java:442)
at com.ibm.ws.objectManager.ConcurrentSubList.addEntry
(ConcurrentSubList.java:239)
at com.ibm.ws.objectManager.ConcurrentLinkedList.addEntry
(ConcurrentLinkedList.java:526)
at com.ibm.ws.sib.msgstore.persistence.objectManager.
PersistableImpl.addToStore(PersistableImpl.java:473)
at com.ibm.ws.sib.msgstore.persistence.objectManager.
PersistableImpl.addToStore(PersistableImpl.java:323)
at com.ibm.ws.sib.msgstore.persistence.objectManager.
BatchingContextImpl.insert(BatchingContextImpl.java:195)
at com.ibm.ws.sib.msgstore.task.AddTask.persist
(AddTask.java:371)
at com.ibm.ws.sib.msgstore.persistence.objectManager.
PersistentMessageStoreImpl.commit(PersistentMessageStore
Impl.java:1710)
at com.ibm.ws.sib.msgstore.transactions.MSDelegatingLocal
Transaction.commit(MSDelegatingLocalTransaction.java:402)

com.ibm.lconn.events.internal.publish.impl.JMSPublisher
publishEvent CLFWY0151E: A JMS Exception occurred when
publishing an event with ID 6d4b8b63-853d-417c-8110-bdd8
36c162ef to topic XYZ
javax.jms.JMSException: CWSIA0067E: An exception was received
during the call to the method JmsMsgProducerImpl.
<constructor>: com.ibm.ws.sib.processor.exceptions.
SIMPDestinationCorruptException: CWSIK0027E: The destination
with name connections.events is corrupt.
at com.ibm.ws.sib.api.jms.impl.JmsMsgProducerImpl.<init>
(JmsMsgProducerImpl.java:445)
at com.ibm.ws.sib.api.jms.impl.JmsTopicPublisherImpl.<init>
(JmsTopicPublisherImpl.java:59)
at
com.ibm.ws.sib.api.jms.impl.JmsTopicSessionImpl.instantiate
Producer(JmsTopicSessionImpl.java:231)
at com.ibm.ws.sib.api.jms.impl.JmsSessionImpl.createProducer
(JmsSessionImpl.java:866)
Caused by: com.ibm.ws.sib.processor.exceptions.SIMPDestination
CorruptException: CWSIK0027E: The destination with name
XYZ is corrupt
at com.ibm.ws.sib.processor.impl.DestinationManager.
getDestinationInternal(DestinationManager.java:1289)
at com.ibm.ws.sib.processor.impl.DestinationManager.
getDestination(DestinationManager.java:1085)
at com.ibm.ws.sib.processor.impl.ConnectionImpl.internal
CreateProducerSession(ConnectionImpl.java:1094)
at com.ibm.ws.sib.processor.impl.ConnectionImpl.create
ProducerSession(ConnectionImpl.java:1029)
at com.ibm.ws.sib.processor.impl.ConnectionImpl.create
ProducerSession(ConnectionImpl.java:958)
at com.ibm.ws.sib.api.jms.impl.JmsMsgProducerImpl.<init>
(JmsMsgProducerImpl.java:371)

LOCAL FIX:
NONE

PROBLEM SUMMARY

USERS AFFECTED:
Users of the default messaging provider for IBM WebSphere Application Server with filestore as the message store.

PROBLEM DESCRIPTION:
When a Messaging engine is configured with a FileStore in certain scenarios an "IllegalMonitorStateException" is observed when persisting the data into the store. This exception has the potential of corrupting the destination at a later point of time.

RECOMMENDATION:
None

When a Messaging engine is configured with a FileStore, in certain scenarios an IllegalMonitorStateException" is observed when persisting the data into the store. This exception was resulting in a state where the messaging engine believes the data was persisted but infact there is no data corresponding to the token held. Due to this situation the when there is an attempt to retrieve the data corresponding to the token the data is not found and due to the inconsistency observed the destination is marked as corrupted.

PROBLEM CONCLUSION:
The code has been fixed to rollback the complate transaction to avoid any inconsistency in the store.

The fix for this APAR is currently targeted for inclusion in fix packs 7.0.0.37,8.0.0.10 and 8.5.5.4. Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980

Prerequisites

None

Installation Instructions

Please review the readme.txt for detailed installation instructions.

[{"INLabel":"Readme","INLang":"US English","INSize":"9709","INURL":"ftp://public.dhe.ibm.com/software/websphere/appserv/support/fixes/PI20317/8.5.5.3/readme.txt"}]
On
[{"DNLabel":"8.5.5.0-WS-WASND-IFPI20317","DNDate":"02-09-2015","DNLang":"US English","DNSize":"260682","DNPlat":{"label":"AIX","code":"PF002"},"DNURL":"http://www-933.ibm.com/eserver/support/fixes/fixcentral/swgquickorder?fixes=8.5.5.0-WS-WASND-IFPI20317&productid=WebSphere%20Application%20Server&brandid=5","DNURL_FTP":null,"DDURL":null}]

Technical Support

Contact IBM Support using SR (http://www.ibm.com/software/support/probsub.html), visit the WebSphere Application Server support web site (http://www.ibm.com/software/webservers/appserv/was/support/), or contact 1-800-IBM-SERV (U.S. only).

[{"Product":{"code":"SSEQTP","label":"WebSphere Application Server"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Service Integration Technology","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF012","label":"IBM i"},{"code":"PF013","label":"Inspur K-UX"},{"code":"PF016","label":"Linux"},{"code":"PF014","label":"iOS"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"},{"code":"PF035","label":"z\/OS"}],"Version":"8.5.5.3","Edition":"Base;Express;Network Deployment","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
15 June 2018

UID

swg24039368