PMDF System Manager's Guide
35.4.6 PMDF Messages are Not Delivered
In addition to message transport problems, there are two other common
problems which can lead to messages sitting around unprocessed in the
message queues:
- The message has a low priority. By default, PMDF pays attention to
Priority: headers in scheduling message delivery jobs: only messages of
normal or urgent Priority: get an immediate delivery attempt, while
messages of non-urgent Priority: wait until the next run of the PMDF
periodic delivery job.
- The queue cache database is not synchronized with the messages in
the queue directories.
Message files in the PMDF queue subdirectories which are awaiting
delivery are entered into the queue cache database. When channel
programs run in order to deliver messages in their queues they consult
the queue cache to determine what messages to process. There are
circumstances which can lead to message files in the queue that do not
have a corresponding queue cache entry. For example, if the queue cache
database has incorrect ownership and protection, see Section 35.2.3.
Channel programs will ignore queued messages which do not have a cache
entry. You can use the pmdf cache -view
utility to check
if a particular file is in the queue cache; if it is not, then the
queue cache needs to be synchronized.
The queue cache is normally resynchronized daily. If required, you can
manually resynchronize the cache using the UNIX command
# pmdf cache -synchronize
|
Once resynchronized, upon the next running of the PMDF periodic
delivery job the channel programs should process all messages in their
queue.
There is a more drastic step, rebuilding the queue cache
database, which should only be performed as a last resort,
e.g., if disk problems have corrupted your queue cache
database, as it will cause loss of some information from the queue
cache database. (The sort of information lost includes, but is not
limited to, message creation dates, message deferral dates, message
expiration dates, and the original message owner information used by
the pmdf qm -user
utility to allow users to bounce their
own messages.) You can want to consult Process Software before taking
this step. To rebuild the queue cache database, use the UNIX commands,
# pmdf cache -rebuild
# pmdf cache -close
# pmdf cache -synchronize
|
- Channel processing programs fail to run because they cannot create
their execution log file.
Check the access permissions, disk space and quotas.