KB01120906 Correcting a broken outboxThis article explains how to fix a "broken" outbox. This is not the same as simply having messages "stuck" in the outbox (where the messages are on hold waiting for another delivery attempt). Stuck messages can be restarted with the "Clear Host Assignments" command (right-click on the Outbox to see this).
A broken outbox occurs when the outbox data files become corrupted (usually because of a shutdown failure).
How to correct
Shut down Mailtraq. Go to \database\mail\outbox. Delete the index file. Remove all other files to a safe location. Restart Mailtraq and a new outbox index file will be created on demand.
Examine the message files you removed in a text editor, one by one. If they are empty or corrupt, delete them. If they have the following lines at the top ... FROM: user@host
RCPT: user@host
RCPT: user@host
i.e. Multiple recipients, one per line
... and the rest of the message looks correct, both headers and body, you can rename the file to a short name like "msg1.txt" and save it to \database\mail\pending.
Mailtraq will re-route any files from there back to the outbox as required. You only need to do that if you need those messages to be delivered by Mailtraq.
If you want to be certain that you know which messages have been delivered, create a new archive in the console named, for example, mail-sent, and specify that mailslot in Console | Options | Outgoing Mail | Forward Copies of outgoing mail to. Mailtraq will then add a copy of all messages which are confirmed as received by the recipient system to that archive.
In general, this problem occurs because the the remote mx relay is unavailable or you are being refused access for some reason. If so, Mailtraq will keep trying for the amount of time you configured in the static outbound route you created.
Author credit |