My Oracle Support Banner

Possible causes of JMS Out Of Memory (OOM) (Doc ID 1327999.1)

Last updated on JUNE 10, 2022

Applies to:

Oracle WebLogic Server - Version 9.0 and later
Information in this document applies to any platform.


Misconfiguration in JMS might cause Out Of Memory issues. Some possible symptoms are:

  • Memory consumption high because a sender is producing more messages than the receiver is able to consume, and this might exhaust the memory allocated for the Java process. When monitoring the queue or topic, it is possible to see the number of messages pending increasing.
  • Message paging full. Message paging is used to store messages temporarily before sending them to the target queue or topic. The memory assigned for this paging might get full if there are too many messages stored there. The default paging directory is <DOMAIN_HOME>\servers\servername\tmp.
  • A zombie consumer which is not consuming messages from its assigned topic. In this case, the message waits until all the consumers get the message. If a consumer is not receiving messages, then the messages remains in the topic until it is delivered to all consumers or the expiration time is completed. Check if the messages have been consumed by monitoring the topic and the error destination. Enabling some JMS debug flags is possible to trace the route of a message. Debug flags that should be enabled are weblogic.jms.frontend and weblogic.jms.backend. Set an error destination and check the messages that expired and could not be delivered.


To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!

In this Document

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.