If Rhapsody is not processing messages, the first step is to determine whether the issue affects the whole engine, or just a small section of components in the engine. An issue that affects a small selection of components is likely to be a connectivity issue, while an issue that affects the entire engine is likely to be a Rhapsody or infrastructure issue. Sometimes what appears to be a Rhapsody engine that is not processing messages is, in fact, an engine processing messages very slowly.

If the issue affects a small subset of components:

  1. Check the input and output communication points in the Management Console relating the appropriate area of the solution to see if any connectivity issues have been logged.
  2. Where all communications points appear to be functioning correctly, use the Management Console to find one or more input messages, then trace them through the engine to see where they are getting stuck or lost.
  3. Check the Error Queue. If there is a fault in the configuration, or a system starting sending unrecognized messages to Rhapsody, these may end up on the error queue.

If the issue affects the complete Rhapsody engine:

  1. On Rhapsody instances where full garbage collection is used within the JVM, no messages are processed while the garbage collection is taking place. If the garbage collection takes too long, the wrapper watchdog service restarts the Rhapsody engine. This issue is normally caused by either not enough RAM (causing frequent garbage collection events) or too much RAM (causing infrequent but very large garbage collection events) allocated to the Rhapsody process.
  2. From the Management Console, review the Threads page to check whether all the route threads have become stuck trying to process messages on a particular route. This can occur when a misconfiguration in the route results in an infinite loop (check inside Mapper and JavaScript filters), or there is a very slow processing filter on the route (for example, a Database or Execute Command filter that is taking a very long time to complete).