Investigating why a queue is full

This topic describes how to investigate why a queue on a service integration bus is full.

About this task

When a queue becomes full, exceptions will be returned when you attempt to produce a message to that queue. The most probable reason for a queue filling up is that the producing application is producing messages faster than they can be consumed by the consuming application, although causes can also include broken communication links or errors in the consuming application.

Procedure

  1. Click Service integration -> Buses -> bus_name -> Destinations to display a list which includes all the queues on that bus. Click the name of the queue that is full.
  2. Click Queue points -> queue_point_name, then on the Runtime tab review the value of the Current message depth. If this value increases steadily, the producing application is outpacing the consumer.
    Note: If the destination has multiple queue points, or is mediated, perform the following checks for each message point the message could have been sent to or consumed from.
  3. Determine which messaging engines the producing and consuming applications are connected to, see Determining which messaging engine an application is connected to.
  4. If the producing and consuming applications are connected to different messaging engines, the messages are being routed via a remote queue point. On the producer's messaging engine, click Remote queue points and then click the queue point that represents the consumer's queue point. Review the number of current outbound messages. If the number of current messages is low, the problem does not lie with the remote queue point; check that the consuming application is started and is consuming messages without error. If the number of current messages is approaching the high message threshold, perform the following checks:
    • Check that the two messaging engines can communicate with each other, see Service integration troubleshooting: Checking the communication between two messaging engines in a bus. If the messaging engines can communicate, reduce the rate at which messages are produced. If the messaging engines cannot communicate, resolve the failure. If you encounter problems processing the backlog of messages once communication is restored, and the backlog does not contain any messages that are vital, consider deleting all the messages on the remote message point. To delete the messages, select the relevant remote message point and click Delete all messages.
      Note: You will not be able to recover the messages once they have been deleted.
    • Check that messages are not being trapped in the 'Committing' state. If they are, a resource manager, such as a database, has hung. Resolve the issue with the resource manager. If this fails, note the Transaction ID of the message and click Servers -> Application servers -> [Content pane] server_name -> [Runtime tab] [Additional Properties] Transaction Service to display the general properties for the transaction service, including numbers of transactions. Use the Review links to resolve the transaction whose Global ID matches the transaction ID of the message.



In this information ...


IBM Redbooks, demos, education, and more

(Index)

Use IBM Suggests to retrieve related content from ibm.com and beyond, identified for your convenience.

This feature requires Internet access.

Task topic Task topic    

Terms and conditions for information centers | Feedback

Last updatedLast updated: Aug 30, 2013 6:03:36 PM CDT
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=pix&product=was-base-iseries&topic=tju_queue_full
File name: tju_queue_full.html